
/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
/* WARNING: Type propagation algorithm not settling */

void __regparm3 dump_bfd(bfd *abfd)

{
  bfd_target *pbVar1;
  bfd_endian bVar2;
  char *pcVar3;
  long lVar4;
  asymbol **__dest;
  bfd_section *pbVar5;
  asymbol *paVar6;
  bfd_arch_info *pbVar7;
  bfd_target *pbVar8;
  undefined4 uVar9;
  undefined4 uVar10;
  void *dhandle;
  bfd_boolean bVar11;
  char *__format;
  arelent **relpp;
  char *pcVar12;
  int iVar13;
  uint uVar14;
  uint in_EDX;
  uint extraout_EDX;
  uint extraout_EDX_00;
  uint extraout_EDX_01;
  uint extraout_EDX_02;
  uint extraout_EDX_03;
  uint extraout_EDX_04;
  uint extraout_EDX_05;
  undefined4 extraout_EDX_06;
  uint extraout_EDX_07;
  asymbol **ppaVar15;
  byte *pbVar16;
  byte *pbVar17;
  undefined4 *puVar18;
  byte *pbVar19;
  undefined4 *puVar20;
  bool bVar21;
  bool bVar22;
  bool bVar23;
  byte bVar24;
  ulonglong uVar25;
  longlong lVar26;
  asymbol **local_f0;
  asymbol **local_ec;
  int local_e8;
  objdump_disasm_info aux;
  bfd_boolean has_reloc;
  objdump_disasm_info *local_ac;
  bfd_flavour local_a8;
  undefined4 local_a4;
  undefined4 local_a0;
  undefined4 local_9c;
  asymbol **local_84;
  long local_7c;
  code *local_68;
  code *local_64;
  undefined4 local_48;
  undefined4 local_44;
  undefined4 local_40;
  undefined4 local_3c;
  undefined4 local_38;
  char *local_24;
  undefined4 uStack_14;
  
  bVar24 = 0;
  uStack_14 = 0x16fdb;
  if (adjust_section_vma == 0) {
    if (dump_debugging_tags == 0 && suppress_bfd_header == 0) {
LAB_00017807:
      pcVar3 = abfd->filename;
      pcVar12 = abfd->xvec->name;
      __format = (char *)dcgettext(0,"\n%s:     file format %s\n",5);
      printf(__format,pcVar3,pcVar12);
      in_EDX = extraout_EDX_03;
    }
  }
  else {
    has_reloc = *(uint *)&abfd->field_0x28 >> 5 & 1;
    bfd_map_over_sections(abfd,adjust_addresses,&has_reloc);
    in_EDX = extraout_EDX_02;
    if (dump_debugging_tags == 0 && suppress_bfd_header == 0) goto LAB_00017807;
  }
  if (dump_ar_hdrs != 0) {
    print_arelt_descr(*(FILE **)PTR_stdout_0006ffdc,abfd,1,0);
    in_EDX = extraout_EDX_04;
  }
  if (dump_file_header != 0) {
    uVar9 = bfd_get_mach(abfd);
    uVar10 = bfd_get_arch(abfd);
    uVar9 = bfd_printable_arch_mach(uVar10,uVar9);
    pcVar3 = (char *)dcgettext(0,"architecture: %s, ",5);
    printf(pcVar3,uVar9);
    uVar14 = *(uint *)&abfd->field_0x28;
    pcVar3 = (char *)dcgettext(0,"flags 0x%08x:\n",5);
    printf(pcVar3,uVar14 >> 5 & 0x3ff);
    pcVar3 = "";
    uVar14 = *(uint *)&abfd->field_0x28 >> 5;
    if ((uVar14 & 1) != 0) {
      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");
      pcVar3 = ", ";
      uVar14 = *(uint *)&abfd->field_0x28 >> 5;
    }
    if ((uVar14 & 2) != 0) {
      printf("%s%s",pcVar3,"EXEC_P");
      pcVar3 = ", ";
      uVar14 = *(uint *)&abfd->field_0x28 >> 5;
    }
    if ((uVar14 & 4) != 0) {
      printf("%s%s",pcVar3,"HAS_LINENO");
      pcVar3 = ", ";
      uVar14 = *(uint *)&abfd->field_0x28 >> 5;
    }
    if ((uVar14 & 8) != 0) {
      printf("%s%s",pcVar3,"HAS_DEBUG");
      pcVar3 = ", ";
      uVar14 = *(uint *)&abfd->field_0x28 >> 5;
    }
    if ((uVar14 & 0x10) != 0) {
      printf("%s%s",pcVar3,"HAS_SYMS");
      pcVar3 = ", ";
      uVar14 = *(uint *)&abfd->field_0x28 >> 5;
    }
    if ((uVar14 & 0x20) != 0) {
      printf("%s%s",pcVar3,"HAS_LOCALS");
      pcVar3 = ", ";
      uVar14 = *(uint *)&abfd->field_0x28 >> 5;
    }
    if ((uVar14 & 0x40) != 0) {
      printf("%s%s",pcVar3,"DYNAMIC");
      pcVar3 = ", ";
      uVar14 = *(uint *)&abfd->field_0x28 >> 5;
    }
    if ((uVar14 & 0x80) != 0) {
      printf("%s%s",pcVar3,"WP_TEXT");
      pcVar3 = ", ";
      uVar14 = *(uint *)&abfd->field_0x28 >> 5;
    }
    if ((uVar14 & 0x100) != 0) {
      printf("%s%s",pcVar3,"D_PAGED");
      pcVar3 = ", ";
      uVar14 = *(uint *)&abfd->field_0x28 >> 5;
    }
    if ((uVar14 & 0x200) != 0) {
      printf("%s%s",pcVar3,"BFD_IS_RELAXABLE");
    }
    pcVar3 = (char *)dcgettext(0,"\nstart address 0x",5);
    printf(pcVar3);
    bfd_fprintf_vma(abfd,*(undefined4 *)PTR_stdout_0006ffdc,abfd->start_address);
    putchar(10);
    in_EDX = extraout_EDX_05;
  }
  if (dump_private_headers != 0) {
    (*abfd->xvec->_bfd_print_private_bfd_data)(abfd,*(void **)PTR_stdout_0006ffdc);
    in_EDX = extraout_EDX_00;
  }
  if (dump_private_options != (char *)0x0) {
    pcVar3 = (char *)dcgettext(0,"option -P/--private not supported by this file",5);
    non_fatal(pcVar3);
    in_EDX = extraout_EDX;
  }
  if (dump_debugging_tags == 0 && suppress_bfd_header == 0) {
    putc(10,*(FILE **)PTR_stdout_0006ffdc);
    in_EDX = extraout_EDX_07;
  }
  uVar25 = CONCAT44(in_EDX,symcount);
  ppaVar15 = syms;
  if ((((dump_symtab != 0 || dump_reloc_info != 0) || disassemble != 0) || dump_debugging != 0) ||
      dump_dwarf_section_info != 0) {
    if ((abfd->field_0x29 & 2) == 0) {
      uVar25 = (ulonglong)in_EDX << 0x20;
      ppaVar15 = (asymbol **)0x0;
    }
    else {
      lVar4 = (*abfd->xvec->_bfd_get_symtab_upper_bound)(abfd);
      if (lVar4 < 0) {
        pcVar3 = abfd->filename;
        pcVar12 = (char *)dcgettext(0,"failed to read symbol table from: %s",5,lVar4);
        non_fatal(pcVar12,pcVar3);
        pcVar3 = (char *)dcgettext(0,"error message was",5);
                    /* WARNING: Subroutine does not return */
        bfd_fatal(pcVar3);
      }
      ppaVar15 = (bfd_symbol **)0x0;
      if (lVar4 != 0) {
        ppaVar15 = (asymbol **)xmalloc(lVar4);
      }
      uVar25 = (ulonglong)(*abfd->xvec->_bfd_canonicalize_symtab)(abfd,ppaVar15);
      symcount = (long)uVar25;
      if (symcount < 0) goto LAB_00017bfe;
    }
  }
  syms = ppaVar15;
  symcount = (long)uVar25;
  if (dump_section_headers != 0) {
    has_reloc = 0xd;
    pcVar3 = (char *)dcgettext(0,"Sections:\n",5);
    printf(pcVar3);
    if (wide_output != 0) {
      bfd_map_over_sections(abfd,find_longest_section_name,&has_reloc);
    }
    bVar11 = has_reloc;
    pcVar3 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);
    printf(pcVar3,bVar11,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);
    if (wide_output != 0) {
      pcVar3 = (char *)dcgettext(0,"  Flags",5);
      printf(pcVar3);
    }
    putchar(10);
    bfd_map_over_sections(abfd,dump_section_header,&has_reloc);
    uVar25 = CONCAT44(extraout_EDX_06,symcount);
  }
  symcount = (long)uVar25;
  if (dump_dynamic_symtab == 0 && dump_dynamic_reloc_info == 0) {
    if (disassemble != 0) {
      lVar4 = (*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound)(abfd);
      lVar26 = CONCAT44((int)((ulonglong)lVar4 >> 0x20),dynsymcount);
      ppaVar15 = dynsyms;
      if (0 < (int)lVar4) goto LAB_000170fd;
      goto LAB_00017145;
    }
  }
  else {
LAB_000170fd:
    lVar4 = (*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound)(abfd);
    if (lVar4 < 0) {
      pcVar3 = abfd->filename;
      if ((abfd->field_0x29 & 8) != 0) {
                    /* WARNING: Subroutine does not return */
        bfd_fatal(pcVar3);
      }
      pcVar12 = (char *)dcgettext(0,"%s: not a dynamic object",5);
      non_fatal(pcVar12,pcVar3);
      exit_status = 1;
      lVar26 = (ulonglong)extraout_EDX_01 << 0x20;
      ppaVar15 = (asymbol **)0x0;
    }
    else {
      ppaVar15 = (bfd_symbol **)0x0;
      if (lVar4 != 0) {
        ppaVar15 = (asymbol **)xmalloc(lVar4);
      }
      lVar26 = (longlong)(*abfd->xvec->_bfd_canonicalize_dynamic_symtab)(abfd,ppaVar15);
      dynsymcount = (long)lVar26;
      if (dynsymcount < 0) goto LAB_00017bfe;
    }
LAB_00017145:
    dynsyms = ppaVar15;
    dynsymcount = (long)lVar26;
    uVar25 = CONCAT44((int)((ulonglong)lVar26 >> 0x20),symcount);
    if (disassemble != 0) {
      synthcount = (*abfd->xvec->_bfd_get_synthetic_symtab)
                             (abfd,symcount,syms,dynsymcount,dynsyms,&synthsyms);
      uVar25 = (ulonglong)(uint)symcount;
      if (synthcount < 0) {
        synthcount = 0;
        uVar25 = (ulonglong)(uint)symcount;
      }
    }
  }
  symcount = (long)uVar25;
  if (dump_symtab != 0) {
    dump_symbols((bfd *)0x0,(bfd_boolean)(uVar25 >> 0x20));
  }
  if (dump_dynamic_symtab != 0) {
    dump_symbols((bfd *)0x1,dump_dynamic_symtab);
  }
  if (dump_dwarf_section_info != 0) {
    dump_dwarf(abfd);
  }
  if (dump_stab_section_info != 0) {
    dump_stabs_section(abfd,".stab",".stabstr");
    dump_stabs_section(abfd,".stab.excl",".stab.exclstr");
    dump_stabs_section(abfd,".stab.index",".stab.indexstr");
    dump_stabs_section(abfd,"LC_SYMTAB.stabs","LC_SYMTAB.stabstr");
    dump_stabs_section(abfd,"$GDB_SYMBOLS$","$GDB_STRINGS$");
  }
  if (dump_reloc_info == 0) {
LAB_00017355:
    if (dump_dynamic_reloc_info != 0) {
      if (disassemble != 0) goto LAB_00017371;
      lVar4 = (*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound)(abfd);
      if (lVar4 < 0) goto LAB_00017bfe;
      printf("DYNAMIC RELOCATION RECORDS");
      if (lVar4 == 0) {
        puts(" (none)\n");
      }
      else {
        relpp = (arelent **)xmalloc(lVar4);
        lVar4 = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,relpp,dynsyms);
        if (lVar4 < 0) goto LAB_00017bfe;
        if (lVar4 == 0) {
          puts(" (none)\n");
        }
        else {
          putchar(10);
          dump_reloc_set(abfd,(asection *)0x0,relpp,lVar4);
          puts("\n");
        }
        free(relpp);
      }
    }
LAB_000171f0:
    if (dump_section_contents != 0) {
LAB_00017ac0:
      bfd_map_over_sections(abfd,dump_section,0);
    }
    if (disassemble == 0) goto joined_r0x0001721a;
  }
  else {
    if (disassemble == 0) {
      bfd_map_over_sections(abfd,dump_relocs_in_section,0);
      goto LAB_00017355;
    }
    if (dump_dynamic_reloc_info == 0) goto LAB_000171f0;
LAB_00017371:
    if (dump_section_contents != 0) goto LAB_00017ac0;
  }
  print_files = (print_file_list *)0x0;
  prev_functionname = (char *)0x0;
  prev_line = 0xffffffff;
  sorted_symcount = symcount;
  if (symcount == 0) {
    sorted_symcount = dynsymcount;
  }
  prev_discriminator = 0;
  __dest = (asymbol **)xmalloc((sorted_symcount + synthcount) * 4);
  local_e8 = sorted_symcount;
  ppaVar15 = syms;
  if (symcount == 0) {
    ppaVar15 = dynsyms;
  }
  sorted_syms = __dest;
  memcpy(__dest,ppaVar15,sorted_symcount << 2);
  pbVar5 = (bfd_section *)(PTR__bfd_std_section_0006ffd8 + 0xa8);
  local_f0 = __dest;
  local_ec = __dest;
LAB_00017428:
  local_e8 = local_e8 + -1;
  if (-1 < local_e8) {
    while( true ) {
      ppaVar15 = local_f0 + 1;
      paVar6 = *local_f0;
      pbVar17 = (byte *)paVar6->name;
      local_f0 = ppaVar15;
      if ((pbVar17 == (byte *)0x0) || (*pbVar17 == 0)) break;
      bVar21 = false;
      bVar23 = (paVar6->flags & 0x104) == 0;
      if (!bVar23) {
        iVar13 = 4;
        pbVar16 = pbVar17;
        pbVar19 = &DAT_0004c8bd;
        do {
          if (iVar13 == 0) break;
          iVar13 = iVar13 + -1;
          bVar21 = *pbVar16 < *pbVar19;
          bVar23 = *pbVar16 == *pbVar19;
          pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1;
          pbVar19 = pbVar19 + (uint)bVar24 * -2 + 1;
        } while (bVar23);
        bVar22 = false;
        bVar21 = (!bVar21 && !bVar23) == bVar21;
        if (!bVar21) {
          iVar13 = 5;
          pbVar16 = &DAT_0004c8c2;
          do {
            if (iVar13 == 0) break;
            iVar13 = iVar13 + -1;
            bVar22 = *pbVar17 < *pbVar16;
            bVar21 = *pbVar17 == *pbVar16;
            pbVar17 = pbVar17 + (uint)bVar24 * -2 + 1;
            pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1;
          } while (bVar21);
          if ((!bVar22 && !bVar21) != bVar22) break;
        }
      }
      if ((paVar6->section == pbVar5) || ((paVar6->section->flags & 0x1000) != 0)) break;
      *local_ec = paVar6;
      local_ec = local_ec + 1;
      local_e8 = local_e8 + -1;
      if (local_e8 < 0) goto LAB_000174ab;
    }
    goto LAB_00017428;
  }
LAB_000174ab:
  sorted_symcount = (int)local_ec - (int)__dest >> 2;
  if (0 < synthcount) {
    sorted_symcount = sorted_symcount + synthcount;
    paVar6 = synthsyms;
    do {
      *local_ec = paVar6;
      local_ec = local_ec + 1;
      paVar6 = paVar6 + 1;
    } while (__dest + sorted_symcount != local_ec);
  }
  qsort(__dest,sorted_symcount,4,compare_symbols);
  init_disassemble_info(&has_reloc,*(undefined4 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0);
  local_ac = &aux;
  local_68 = objdump_print_address;
  local_64 = objdump_symbol_at_address;
  aux.require_sec = 0;
  aux.dynrelbuf = (arelent **)0x0;
  aux.dynrelcount = 0;
  aux.reloc = (arelent *)0x0;
  aux.abfd = abfd;
  if (machine != (char *)0x0) {
    pbVar7 = (bfd_arch_info *)bfd_scan_arch(machine);
    pcVar3 = machine;
    if (pbVar7 == (bfd_arch_info *)0x0) {
      pcVar12 = (char *)dcgettext(0,"can\'t use supplied machine %s",5,__dest);
                    /* WARNING: Subroutine does not return */
      fatal(pcVar12,pcVar3);
    }
    abfd->arch_info = pbVar7;
  }
  if (endian != BFD_ENDIAN_UNKNOWN) {
    pbVar8 = (bfd_target *)xmalloc(0x1c4);
    pbVar1 = abfd->xvec;
    puVar20 = (undefined4 *)((uint)&pbVar8->flavour & 0xfffffffc);
    iVar13 = (int)pbVar8 - (int)puVar20;
    pbVar8->name = pbVar1->name;
    pbVar8->backend_data = pbVar1->backend_data;
    puVar18 = (undefined4 *)((int)pbVar1 - iVar13);
    for (uVar14 = iVar13 + 0x1c4U >> 2; uVar14 != 0; uVar14 = uVar14 - 1) {
      *puVar20 = *puVar18;
      puVar18 = puVar18 + (uint)bVar24 * -2 + 1;
      puVar20 = puVar20 + (uint)bVar24 * -2 + 1;
    }
    abfd->xvec = pbVar8;
    pbVar8->byteorder = endian;
  }
  uVar9 = bfd_get_mach(abfd);
  bVar2 = abfd->xvec->byteorder;
  uVar10 = bfd_get_arch(abfd);
  aux.disassemble_fn = (disassembler_ftype)disassembler(uVar10,bVar2 == BFD_ENDIAN_BIG,uVar9,abfd);
  if (aux.disassemble_fn == (disassembler_ftype)0x0) {
    uVar9 = bfd_get_arch(abfd);
    uVar9 = bfd_printable_arch_mach(uVar9,0);
    pcVar3 = (char *)dcgettext(0,"can\'t disassemble for architecture %s\n",5);
    non_fatal(pcVar3,uVar9);
    exit_status = 1;
  }
  else {
    local_a8 = abfd->xvec->flavour;
    local_a4 = bfd_get_arch(abfd);
    local_a0 = bfd_get_mach(abfd);
    local_24 = disassembler_options;
    local_44 = bfd_octets_per_byte(abfd);
    local_40 = 8;
    local_3c = 3;
    local_38 = 0;
    bVar2 = abfd->xvec->byteorder;
    if (bVar2 == BFD_ENDIAN_BIG) {
      local_9c = 0;
      local_48 = 0;
    }
    else if (bVar2 == BFD_ENDIAN_LITTLE) {
      local_9c = 1;
      local_48 = 1;
    }
    else {
      local_9c = 2;
    }
    disassemble_init_for_target(&has_reloc);
    lVar4 = (*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound)(abfd);
    if (lVar4 < 0) {
      if (dump_dynamic_reloc_info != 0) {
LAB_00017bfe:
                    /* WARNING: Subroutine does not return */
        bfd_fatal(abfd->filename);
      }
    }
    else if (lVar4 != 0) {
      aux.dynrelbuf = (arelent **)xmalloc(lVar4);
      aux.dynrelcount = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,aux.dynrelbuf,dynsyms);
      if (aux.dynrelcount < 0) goto LAB_00017bfe;
      qsort(aux.dynrelbuf,aux.dynrelcount,4,compare_relocs);
    }
    local_84 = sorted_syms;
    local_7c = sorted_symcount;
    bfd_map_over_sections(abfd,disassemble_section,&has_reloc);
    if (aux.dynrelbuf != (arelent **)0x0) {
      free(aux.dynrelbuf);
    }
    free(sorted_syms);
  }
joined_r0x0001721a:
  if (dump_debugging != 0) {
    dhandle = read_debugging_info(abfd,syms,symcount,1);
    if (dhandle == (void *)0x0) {
      if (dump_dwarf_section_info == 0) {
        dwarf_select_sections_all();
        dump_dwarf(abfd);
      }
    }
    else {
      bVar11 = print_debugging_info
                         (*(FILE **)PTR_stdout_0006ffdc,dhandle,abfd,syms,
                          (_func_char_ptr_bfd_ptr_char_ptr_int *)PTR_bfd_demangle_0006ffe4,
                          (uint)(dump_debugging_tags != 0));
      if (bVar11 == 0) {
        pcVar3 = abfd->filename;
        pcVar12 = (char *)dcgettext(0,"%s: printing debugging information failed",5);
        non_fatal(pcVar12,pcVar3);
        exit_status = 1;
      }
    }
  }
  if (syms != (asymbol **)0x0) {
    free(syms);
    syms = (asymbol **)0x0;
  }
  if (dynsyms != (asymbol **)0x0) {
    free(dynsyms);
    dynsyms = (asymbol **)0x0;
  }
  if (synthsyms != (asymbol *)0x0) {
    free(synthsyms);
    synthsyms = (asymbol *)0x0;
  }
  symcount = 0;
  dynsymcount = 0;
  synthcount = 0;
  return;
}



/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
/* WARNING: Type propagation algorithm not settling */

void __regparm3 FUN_00016fd0(undefined4 *param_1)

{
  int *piVar1;
  undefined4 uVar2;
  int iVar3;
  int *__dest;
  undefined *puVar4;
  undefined4 *puVar5;
  char *pcVar6;
  undefined4 uVar7;
  int iVar8;
  uint uVar9;
  void *pvVar10;
  byte *pbVar11;
  byte *pbVar12;
  undefined4 *puVar13;
  byte *pbVar14;
  undefined4 *puVar15;
  bool bVar16;
  bool bVar17;
  bool bVar18;
  byte bVar19;
  int *local_f0;
  int *local_ec;
  int local_e8;
  undefined4 *local_d0 [2];
  undefined4 local_c8;
  void *local_c4;
  size_t local_c0;
  int local_bc;
  undefined4 local_b8;
  uint local_b4 [2];
  undefined4 **local_ac;
  undefined4 local_a8;
  undefined4 local_a4;
  undefined4 local_a0;
  undefined4 local_9c;
  int *local_84;
  size_t local_7c;
  code *local_68;
  code *local_64;
  undefined4 local_48;
  undefined4 local_44;
  undefined4 local_40;
  undefined4 local_3c;
  undefined4 local_38;
  undefined4 local_24;
  undefined4 uStack_14;
  
  bVar19 = 0;
  uStack_14 = 0x16fdb;
  if (DAT_0007109c == 0) {
    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {
LAB_00017807:
      uVar2 = *param_1;
      uVar7 = *(undefined4 *)param_1[1];
      pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5);
      printf(pcVar6,uVar2,uVar7);
    }
  }
  else {
    local_b4[0] = (uint)param_1[10] >> 5 & 1;
    bfd_map_over_sections(param_1,FUN_000160d0,local_b4);
    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) goto LAB_00017807;
  }
  if (DAT_000710ec != 0) {
    FUN_000457f0(*(undefined4 *)PTR_stdout_0006ffdc,param_1,1,0);
  }
  if (DAT_00071100 != 0) {
    uVar2 = bfd_get_mach(param_1);
    uVar7 = bfd_get_arch(param_1);
    uVar2 = bfd_printable_arch_mach(uVar7,uVar2);
    pcVar6 = (char *)dcgettext(0,"architecture: %s, ",5);
    printf(pcVar6,uVar2);
    uVar9 = param_1[10];
    pcVar6 = (char *)dcgettext(0,"flags 0x%08x:\n",5);
    printf(pcVar6,uVar9 >> 5 & 0x3ff);
    pcVar6 = "";
    uVar9 = (uint)param_1[10] >> 5;
    if ((uVar9 & 1) != 0) {
      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");
      pcVar6 = ", ";
      uVar9 = (uint)param_1[10] >> 5;
    }
    if ((uVar9 & 2) != 0) {
      printf("%s%s",pcVar6,"EXEC_P");
      pcVar6 = ", ";
      uVar9 = (uint)param_1[10] >> 5;
    }
    if ((uVar9 & 4) != 0) {
      printf("%s%s",pcVar6,"HAS_LINENO");
      pcVar6 = ", ";
      uVar9 = (uint)param_1[10] >> 5;
    }
    if ((uVar9 & 8) != 0) {
      printf("%s%s",pcVar6,"HAS_DEBUG");
      pcVar6 = ", ";
      uVar9 = (uint)param_1[10] >> 5;
    }
    if ((uVar9 & 0x10) != 0) {
      printf("%s%s",pcVar6,"HAS_SYMS");
      pcVar6 = ", ";
      uVar9 = (uint)param_1[10] >> 5;
    }
    if ((uVar9 & 0x20) != 0) {
      printf("%s%s",pcVar6,"HAS_LOCALS");
      pcVar6 = ", ";
      uVar9 = (uint)param_1[10] >> 5;
    }
    if ((uVar9 & 0x40) != 0) {
      printf("%s%s",pcVar6,"DYNAMIC");
      pcVar6 = ", ";
      uVar9 = (uint)param_1[10] >> 5;
    }
    if ((uVar9 & 0x80) != 0) {
      printf("%s%s",pcVar6,"WP_TEXT");
      pcVar6 = ", ";
      uVar9 = (uint)param_1[10] >> 5;
    }
    if ((uVar9 & 0x100) != 0) {
      printf("%s%s",pcVar6,"D_PAGED");
      pcVar6 = ", ";
      uVar9 = (uint)param_1[10] >> 5;
    }
    if ((uVar9 & 0x200) != 0) {
      printf("%s%s",pcVar6,"BFD_IS_RELAXABLE");
    }
    pcVar6 = (char *)dcgettext(0,"\nstart address 0x",5);
    printf(pcVar6);
    bfd_fprintf_vma(param_1,*(undefined4 *)PTR_stdout_0006ffdc,param_1[0x1c]);
    putchar(10);
  }
  if (DAT_000710e8 != 0) {
    (**(code **)(param_1[1] + 0xc4))(param_1,*(undefined4 *)PTR_stdout_0006ffdc);
  }
  if (DAT_000710e4 != 0) {
    uVar2 = dcgettext(0,"option -P/--private not supported by this file",5);
    FUN_000451b0(uVar2);
  }
  if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {
    putc(10,*(FILE **)PTR_stdout_0006ffdc);
  }
  pvVar10 = DAT_0007106c;
  if ((((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0) || DAT_000710ac != 0) ||
      DAT_000710d0 != 0) {
    if ((*(byte *)((int)param_1 + 0x29) & 2) == 0) {
      DAT_00071068 = 0;
      pvVar10 = (void *)0x0;
    }
    else {
      iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);
      if (iVar3 < 0) {
        uVar2 = *param_1;
        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);
        FUN_000451b0(uVar7,uVar2);
        uVar2 = dcgettext(0,"error message was",5);
                    /* WARNING: Subroutine does not return */
        FUN_000450f0(uVar2);
      }
      pvVar10 = (void *)0x0;
      if (iVar3 != 0) {
        pvVar10 = (void *)xmalloc(iVar3);
      }
      DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);
      if (DAT_00071068 < 0) goto LAB_00017bfe;
    }
  }
  DAT_0007106c = pvVar10;
  if (DAT_00071104 != 0) {
    local_b4[0] = 0xd;
    pcVar6 = (char *)dcgettext(0,"Sections:\n",5);
    printf(pcVar6);
    if (DAT_000710b4 != 0) {
      bfd_map_over_sections(param_1,FUN_00016d60,local_b4);
    }
    uVar9 = local_b4[0];
    pcVar6 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);
    printf(pcVar6,uVar9,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);
    if (DAT_000710b4 != 0) {
      pcVar6 = (char *)dcgettext(0,"  Flags",5);
      printf(pcVar6);
    }
    putchar(10);
    bfd_map_over_sections(param_1,FUN_00016160,local_b4);
  }
  if (DAT_000710f8 == 0 && DAT_000710f0 == 0) {
    if (DAT_000710c4 != 0) {
      iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);
      pvVar10 = DAT_0007105c;
      if (0 < iVar3) goto LAB_000170fd;
      goto LAB_00017145;
    }
  }
  else {
LAB_000170fd:
    iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);
    if (iVar3 < 0) {
      uVar2 = *param_1;
      if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {
                    /* WARNING: Subroutine does not return */
        FUN_000450f0(uVar2);
      }
      uVar7 = dcgettext(0,"%s: not a dynamic object",5);
      FUN_000451b0(uVar7,uVar2);
      DAT_00071110 = 1;
      DAT_00071050 = 0;
      pvVar10 = (void *)0x0;
    }
    else {
      pvVar10 = (void *)0x0;
      if (iVar3 != 0) {
        pvVar10 = (void *)xmalloc(iVar3);
      }
      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);
      if (DAT_00071050 < 0) goto LAB_00017bfe;
    }
LAB_00017145:
    DAT_0007105c = pvVar10;
    if ((DAT_000710c4 != 0) &&
       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))
                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,
                                  &DAT_00071058), DAT_00071054 < 0)) {
      DAT_00071054 = 0;
    }
  }
  if (DAT_000710fc != 0) {
    FUN_00016db0();
  }
  if (DAT_000710f8 != 0) {
    FUN_00016db0();
  }
  if (DAT_000710d0 != 0) {
    FUN_00015f30();
  }
  if (DAT_000710cc != 0) {
    FUN_00014db0();
    FUN_00014db0();
    FUN_00014db0();
    FUN_00014db0();
    FUN_00014db0();
  }
  if (DAT_000710f4 == 0) {
LAB_00017355:
    if (DAT_000710f0 != 0) {
      if (DAT_000710c4 != 0) goto LAB_00017371;
      iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);
      if (iVar3 < 0) goto LAB_00017bfe;
      printf("DYNAMIC RELOCATION RECORDS");
      if (iVar3 == 0) {
        puts(" (none)\n");
      }
      else {
        pvVar10 = (void *)xmalloc(iVar3);
        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);
        if (iVar3 < 0) goto LAB_00017bfe;
        if (iVar3 == 0) {
          puts(" (none)\n");
        }
        else {
          putchar(10);
          FUN_000153f0(iVar3);
          puts("\n");
        }
        free(pvVar10);
      }
    }
LAB_000171f0:
    if (DAT_00071108 != 0) {
LAB_00017ac0:
      bfd_map_over_sections(param_1,FUN_00016840,0);
    }
    if (DAT_000710c4 == 0) goto joined_r0x0001721a;
  }
  else {
    if (DAT_000710c4 == 0) {
      bfd_map_over_sections(param_1,FUN_00018570,0);
      goto LAB_00017355;
    }
    if (DAT_000710f0 == 0) goto LAB_000171f0;
LAB_00017371:
    if (DAT_00071108 != 0) goto LAB_00017ac0;
  }
  DAT_0007102c = 0;
  DAT_00071038 = 0;
  DAT_00071034 = 0xffffffff;
  DAT_00071060 = DAT_00071068;
  if (DAT_00071068 == 0) {
    DAT_00071060 = DAT_00071050;
  }
  DAT_00071030 = 0;
  __dest = (int *)xmalloc((DAT_00071060 + DAT_00071054) * 4);
  local_e8 = DAT_00071060;
  pvVar10 = DAT_0007106c;
  if (DAT_00071068 == 0) {
    pvVar10 = DAT_0007105c;
  }
  DAT_00071064 = __dest;
  memcpy(__dest,pvVar10,DAT_00071060 << 2);
  puVar4 = PTR__bfd_std_section_0006ffd8 + 0xa8;
  local_f0 = __dest;
  local_ec = __dest;
LAB_00017428:
  local_e8 = local_e8 + -1;
  if (-1 < local_e8) {
    while( true ) {
      piVar1 = local_f0 + 1;
      iVar3 = *local_f0;
      pbVar12 = *(byte **)(iVar3 + 4);
      local_f0 = piVar1;
      if ((pbVar12 == (byte *)0x0) || (*pbVar12 == 0)) break;
      bVar16 = false;
      bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0;
      if (!bVar18) {
        iVar8 = 4;
        pbVar11 = pbVar12;
        pbVar14 = &DAT_0004c8bd;
        do {
          if (iVar8 == 0) break;
          iVar8 = iVar8 + -1;
          bVar16 = *pbVar11 < *pbVar14;
          bVar18 = *pbVar11 == *pbVar14;
          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;
          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;
        } while (bVar18);
        bVar17 = false;
        bVar16 = (!bVar16 && !bVar18) == bVar16;
        if (!bVar16) {
          iVar8 = 5;
          pbVar11 = &DAT_0004c8c2;
          do {
            if (iVar8 == 0) break;
            iVar8 = iVar8 + -1;
            bVar17 = *pbVar12 < *pbVar11;
            bVar16 = *pbVar12 == *pbVar11;
            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;
            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;
          } while (bVar16);
          if ((!bVar17 && !bVar16) != bVar17) break;
        }
      }
      if ((*(undefined **)(iVar3 + 0x10) == puVar4) ||
         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)) break;
      *local_ec = iVar3;
      local_ec = local_ec + 1;
      local_e8 = local_e8 + -1;
      if (local_e8 < 0) goto LAB_000174ab;
    }
    goto LAB_00017428;
  }
LAB_000174ab:
  DAT_00071060 = (int)local_ec - (int)__dest >> 2;
  if (0 < DAT_00071054) {
    DAT_00071060 = DAT_00071060 + DAT_00071054;
    pvVar10 = DAT_00071058;
    do {
      *local_ec = (int)pvVar10;
      local_ec = local_ec + 1;
      pvVar10 = (void *)((int)pvVar10 + 0x18);
    } while (__dest + DAT_00071060 != local_ec);
  }
  qsort(__dest,DAT_00071060,4,FUN_00015990);
  init_disassemble_info(local_b4,*(undefined4 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0);
  local_ac = local_d0;
  local_68 = FUN_000153c0;
  local_64 = FUN_00014c20;
  local_c8 = 0;
  local_c4 = (void *)0x0;
  local_c0 = 0;
  local_b8 = 0;
  local_d0[0] = param_1;
  if (DAT_00071074 != 0) {
    iVar8 = bfd_scan_arch(DAT_00071074);
    iVar3 = DAT_00071074;
    if (iVar8 == 0) {
      uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest);
                    /* WARNING: Subroutine does not return */
      FUN_00045180(uVar2,iVar3);
    }
    param_1[0x20] = iVar8;
  }
  if (DAT_00070228 != 2) {
    puVar5 = (undefined4 *)xmalloc(0x1c4);
    puVar13 = (undefined4 *)param_1[1];
    iVar3 = (int)puVar5 - (int)((uint)(puVar5 + 1) & 0xfffffffc);
    *puVar5 = *puVar13;
    puVar5[0x70] = puVar13[0x70];
    puVar13 = (undefined4 *)((int)puVar13 - iVar3);
    puVar15 = (undefined4 *)((uint)(puVar5 + 1) & 0xfffffffc);
    for (uVar9 = iVar3 + 0x1c4U >> 2; uVar9 != 0; uVar9 = uVar9 - 1) {
      *puVar15 = *puVar13;
      puVar13 = puVar13 + (uint)bVar19 * -2 + 1;
      puVar15 = puVar15 + (uint)bVar19 * -2 + 1;
    }
    param_1[1] = puVar5;
    puVar5[2] = DAT_00070228;
  }
  uVar2 = bfd_get_mach(param_1);
  iVar3 = *(int *)(param_1[1] + 8);
  uVar7 = bfd_get_arch(param_1);
  local_bc = disassembler(uVar7,iVar3 == 0,uVar2,param_1);
  if (local_bc == 0) {
    uVar2 = bfd_get_arch(param_1);
    uVar2 = bfd_printable_arch_mach(uVar2,0);
    uVar7 = dcgettext(0,"can\'t disassemble for architecture %s\n",5);
    FUN_000451b0(uVar7,uVar2);
    DAT_00071110 = 1;
  }
  else {
    local_a8 = *(undefined4 *)(param_1[1] + 4);
    local_a4 = bfd_get_arch(param_1);
    local_a0 = bfd_get_mach(param_1);
    local_24 = DAT_00071070;
    local_44 = bfd_octets_per_byte(param_1);
    local_40 = 8;
    local_3c = 3;
    local_38 = 0;
    if (*(int *)(param_1[1] + 8) == 0) {
      local_9c = 0;
      local_48 = 0;
    }
    else if (*(int *)(param_1[1] + 8) == 1) {
      local_9c = 1;
      local_48 = 1;
    }
    else {
      local_9c = 2;
    }
    disassemble_init_for_target(local_b4);
    iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);
    if (iVar3 < 0) {
      if (DAT_000710f0 != 0) {
LAB_00017bfe:
                    /* WARNING: Subroutine does not return */
        FUN_000450f0(*param_1);
      }
    }
    else if (iVar3 != 0) {
      local_c4 = (void *)xmalloc(iVar3);
      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);
      if ((int)local_c0 < 0) goto LAB_00017bfe;
      qsort(local_c4,local_c0,4,FUN_000144e0);
    }
    local_84 = DAT_00071064;
    local_7c = DAT_00071060;
    bfd_map_over_sections(param_1,FUN_00018770,local_b4);
    if (local_c4 != (void *)0x0) {
      free(local_c4);
    }
    free(DAT_00071064);
  }
joined_r0x0001721a:
  if (DAT_000710ac != 0) {
    iVar3 = FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1);
    if (iVar3 == 0) {
      if (DAT_000710d0 == 0) {
        FUN_00034950();
        FUN_00015f30();
      }
    }
    else {
      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,
                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);
      if (iVar3 == 0) {
        uVar2 = *param_1;
        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);
        FUN_000451b0(uVar7,uVar2);
        DAT_00071110 = 1;
      }
    }
  }
  if (DAT_0007106c != (void *)0x0) {
    free(DAT_0007106c);
    DAT_0007106c = (void *)0x0;
  }
  if (DAT_0007105c != (void *)0x0) {
    free(DAT_0007105c);
    DAT_0007105c = (void *)0x0;
  }
  if (DAT_00071058 != (void *)0x0) {
    free(DAT_00071058);
    DAT_00071058 = (void *)0x0;
  }
  DAT_00071068 = 0;
  DAT_00071050 = 0;
  DAT_00071054 = 0;
  return;
}


PUSH EBP
MOV EBP,EAX
PUSH EDI
PUSH ESI
PUSH EBX
CALL 0x000143a0
ADD EBX,0x59025
SUB ESP,0xec
MOV EAX,dword ptr [EBX + 0x109c]
TEST EAX,EAX
JNZ 0x000177d0
MOV EAX,dword ptr [EBX + 0x10a8]
OR EAX,dword ptr [EBX + 0x10a4]
JZ 0x00017807
MOV EAX,dword ptr [EBX + 0x10ec]
TEST EAX,EAX
JNZ 0x00017840
MOV EAX,dword ptr [EBX + 0x1100]
TEST EAX,EAX
JNZ 0x00017863
MOV EDI,dword ptr [EBX + 0x10e8]
TEST EDI,EDI
JNZ 0x000172a8
MOV ESI,dword ptr [EBX + 0x10e4]
TEST ESI,ESI
JZ 0x00017059
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdc1a0]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000131f0
MOV dword ptr [ESP],EAX
CALL 0x000451b0
ADD ESP,0x10
MOV EAX,dword ptr [EBX + 0x10a8]
OR EAX,dword ptr [EBX + 0x10a4]
JZ 0x00017b98
MOV EAX,dword ptr [EBX + 0x10fc]
OR EAX,dword ptr [EBX + 0x10f4]
OR EAX,dword ptr [EBX + 0x10c4]
OR EAX,dword ptr [EBX + 0x10ac]
OR EAX,dword ptr [EBX + 0x10d0]
JZ 0x000170dd
TEST byte ptr [EBP + 0x29],0x2
JZ 0x00017b80
SUB ESP,0xc
MOV EAX,dword ptr [EBP + 0x4]
PUSH EBP
CALL dword ptr [EAX + 0x104]
ADD ESP,0x10
TEST EAX,EAX
JS 0x00017f78
MOV ESI,0x0
JNZ 0x00017ae0
SUB ESP,0x8
MOV EAX,dword ptr [EBP + 0x4]
PUSH ESI
PUSH EBP
CALL dword ptr [EAX + 0x108]
MOV dword ptr [EBX + 0x1068],EAX
ADD ESP,0x10
TEST EAX,EAX
JS 0x00017bfe
MOV dword ptr [EBX + 0x106c],ESI
MOV EAX,dword ptr [EBX + 0x1104]
TEST EAX,EAX
JNZ 0x00017970
MOV EAX,dword ptr [EBX + 0x10f8]
OR EAX,dword ptr [EBX + 0x10f0]
JZ 0x000172c8
SUB ESP,0xc
MOV EAX,dword ptr [EBP + 0x4]
PUSH EBP
CALL dword ptr [EAX + 0x1a8]
ADD ESP,0x10
TEST EAX,EAX
JS 0x000172f8
MOV ESI,0x0
JNZ 0x00017bb8
SUB ESP,0x8
MOV EAX,dword ptr [EBP + 0x4]
PUSH ESI
PUSH EBP
CALL dword ptr [EAX + 0x1ac]
MOV dword ptr [EBX + 0x1050],EAX
ADD ESP,0x10
TEST EAX,EAX
JS 0x00017bfe
MOV dword ptr [EBX + 0x105c],ESI
MOV ESI,dword ptr [EBX + 0x10c4]
TEST ESI,ESI
JZ 0x0001718e
SUB ESP,0x8
LEA EDX,[EBX + 0x1058]
MOV EAX,dword ptr [EBP + 0x4]
PUSH EDX
PUSH dword ptr [EBX + 0x105c]
PUSH dword ptr [EBX + 0x1050]
PUSH dword ptr [EBX + 0x106c]
PUSH dword ptr [EBX + 0x1068]
PUSH EBP
CALL dword ptr [EAX + 0x1b0]
MOV EDX,0x0
ADD ESP,0x20
TEST EAX,EAX
CMOVS EAX,EDX
MOV dword ptr [EBX + 0x1054],EAX
MOV ECX,dword ptr [EBX + 0x10fc]
TEST ECX,ECX
JNZ 0x00017ab0
MOV EDX,dword ptr [EBX + 0x10f8]
TEST EDX,EDX
JNZ 0x00017a98
MOV EAX,dword ptr [EBX + 0x10d0]
TEST EAX,EAX
JNZ 0x00017a88
MOV EAX,dword ptr [EBX + 0x10cc]
TEST EAX,EAX
JNZ 0x00017a20
MOV EAX,dword ptr [EBX + 0x10f4]
TEST EAX,EAX
JZ 0x00017355
MOV EAX,dword ptr [EBX + 0x10c4]
TEST EAX,EAX
JZ 0x00017340
MOV EAX,dword ptr [EBX + 0x10f0]
TEST EAX,EAX
JNZ 0x00017371
MOV EDI,dword ptr [EBX + 0x1108]
TEST EDI,EDI
JNZ 0x00017ac0
MOV ESI,dword ptr [EBX + 0x10c4]
TEST ESI,ESI
JNZ 0x0001737f
MOV ESI,dword ptr [EBX + 0x10ac]
MOV EAX,dword ptr [EBX + 0x106c]
TEST ESI,ESI
JNZ 0x00017772
TEST EAX,EAX
JZ 0x0001723a
SUB ESP,0xc
PUSH EAX
CALL 0x00013120
ADD ESP,0x10
MOV dword ptr [EBX + 0x106c],0x0
MOV EAX,dword ptr [EBX + 0x105c]
TEST EAX,EAX
JZ 0x0001725a
SUB ESP,0xc
PUSH EAX
CALL 0x00013120
ADD ESP,0x10
MOV dword ptr [EBX + 0x105c],0x0
MOV EAX,dword ptr [EBX + 0x1058]
TEST EAX,EAX
JZ 0x0001727a
SUB ESP,0xc
PUSH EAX
CALL 0x00013120
ADD ESP,0x10
MOV dword ptr [EBX + 0x1058],0x0
MOV dword ptr [EBX + 0x1068],0x0
MOV dword ptr [EBX + 0x1050],0x0
MOV dword ptr [EBX + 0x1054],0x0
ADD ESP,0xec
POP EBX
POP ESI
POP EDI
POP EBP
RET
MOV EDX,dword ptr [EBX + 0xffffffdc]
SUB ESP,0x8
MOV EAX,dword ptr [EBP + 0x4]
PUSH dword ptr [EDX]
PUSH EBP
CALL dword ptr [EAX + 0xc4]
ADD ESP,0x10
JMP 0x00017031
MOV ECX,dword ptr [EBX + 0x10c4]
TEST ECX,ECX
JZ 0x0001718e
SUB ESP,0xc
MOV EAX,dword ptr [EBP + 0x4]
PUSH EBP
CALL dword ptr [EAX + 0x1a8]
ADD ESP,0x10
TEST EAX,EAX
JG 0x000170fd
JMP 0x00017145
MOV ESI,dword ptr [EBP]
TEST byte ptr [EBP + 0x29],0x8
JNZ 0x00017fd0
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdc808]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000131f0
POP EDI
POP EDX
PUSH ESI
PUSH EAX
XOR ESI,ESI
CALL 0x000451b0
ADD ESP,0x10
MOV dword ptr [EBX + 0x1110],0x1
MOV dword ptr [EBX + 0x1050],0x0
JMP 0x0001713f
SUB ESP,0x4
LEA EAX,[EBX + 0xfffa8570]
PUSH 0x0
PUSH EAX
PUSH EBP
CALL 0x00013780
ADD ESP,0x10
MOV EAX,dword ptr [EBX + 0x10f0]
TEST EAX,EAX
JZ 0x000171f0
MOV EAX,dword ptr [EBX + 0x10c4]
TEST EAX,EAX
JZ 0x00017af8
MOV EDX,dword ptr [EBX + 0x1108]
TEST EDX,EDX
JNZ 0x00017ac0
MOV dword ptr [EBX + 0x102c],0x0
MOV EAX,dword ptr [EBX + 0x1068]
MOV dword ptr [EBX + 0x1038],0x0
MOV dword ptr [EBX + 0x1034],0xffffffff
TEST EAX,EAX
CMOVZ EAX,dword ptr [EBX + 0x1050]
SUB ESP,0xc
MOV dword ptr [EBX + 0x1030],0x0
MOV dword ptr [EBX + 0x1060],EAX
ADD EAX,dword ptr [EBX + 0x1054]
SHL EAX,0x2
PUSH EAX
CALL 0x000132b0
MOV ECX,dword ptr [EBX + 0x1068]
MOV dword ptr [ESP + 0x2c],EAX
MOV dword ptr [EBX + 0x1064],EAX
MOV EAX,dword ptr [EBX + 0x1060]
MOV dword ptr [ESP + 0x24],EAX
SHL EAX,0x2
ADD ESP,0x10
TEST ECX,ECX
JNZ 0x00017b48
MOV EDX,dword ptr [EBX + 0x105c]
SUB ESP,0x4
PUSH EAX
PUSH EDX
MOV EDI,dword ptr [ESP + 0x28]
PUSH EDI
CALL 0x00013140
MOV EAX,dword ptr [EBX + 0xffffffd8]
ADD ESP,0x10
MOV dword ptr [ESP + 0x10],EDI
ADD EAX,0xa8
MOV dword ptr [ESP + 0xc],EDI
MOV dword ptr [ESP + 0x18],EAX
LEA ESI,[ESI]
SUB dword ptr [ESP + 0x14],0x1
JS 0x000174ab
ADD dword ptr [ESP + 0xc],0x4
MOV EAX,dword ptr [ESP + 0xc]
MOV EDX,dword ptr [EAX + -0x4]
MOV EAX,dword ptr [EDX + 0x4]
TEST EAX,EAX
JZ 0x00017428
CMP byte ptr [EAX],0x0
JZ 0x00017428
TEST dword ptr [EDX + 0xc],0x104
JZ 0x00017488
MOV ECX,0x4
LEA EDI,[EBX + 0xfffdc8bd]
MOV ESI,EAX
CMPSB.REPE ES:EDI,ESI
SETA CL
SBB CL,0x0
TEST CL,CL
JZ 0x00017488
MOV ESI,EAX
MOV ECX,0x5
LEA EDI,[EBX + 0xfffdc8c2]
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JNZ 0x00017428
LEA ESI,[ESI]
MOV EAX,dword ptr [EDX + 0x10]
CMP EAX,dword ptr [ESP + 0x18]
JZ 0x00017428
TEST byte ptr [EAX + 0x15],0x10
JNZ 0x00017428
MOV EAX,dword ptr [ESP + 0x10]
MOV dword ptr [EAX],EDX
ADD EAX,0x4
SUB dword ptr [ESP + 0x14],0x1
MOV dword ptr [ESP + 0x10],EAX
JNS 0x0001742f
MOV ESI,dword ptr [ESP + 0x10]
MOV EDI,dword ptr [ESP + 0x1c]
MOV ECX,dword ptr [EBX + 0x1054]
MOV EDX,ESI
SUB EDX,EDI
SAR EDX,0x2
MOV EAX,EDX
MOV dword ptr [EBX + 0x1060],EDX
TEST ECX,ECX
JLE 0x000174f4
ADD EDX,ECX
MOV EAX,dword ptr [EBX + 0x1058]
LEA ECX,[EDI + EDX*0x4]
LEA ESI,[ESI]
NOP
MOV dword ptr [ESI],EAX
ADD ESI,0x4
ADD EAX,0x18
CMP ECX,ESI
JNZ 0x000174e0
MOV dword ptr [EBX + 0x1060],EDX
MOV EAX,EDX
LEA EDX,[EBX + 0xfffa5990]
PUSH EDX
PUSH 0x4
PUSH EAX
PUSH dword ptr [ESP + 0x28]
CALL 0x00013710
MOV EAX,dword ptr [EBX + 0xffffffdc]
ADD ESP,0xc
PUSH dword ptr [EBX + 0xffffffd0]
PUSH dword ptr [EAX]
LEA EAX,[ESP + 0x54]
MOV dword ptr [ESP + 0x18],EAX
PUSH EAX
CALL 0x000137e0
LEA EAX,[ESP + 0x3c]
MOV dword ptr [ESP + 0x3c],EBP
MOV dword ptr [ESP + 0x60],EAX
LEA EAX,[EBX + 0xfffa53c0]
MOV dword ptr [ESP + 0xa4],EAX
LEA EAX,[EBX + 0xfffa4c20]
MOV dword ptr [ESP + 0xa8],EAX
MOV EAX,dword ptr [EBX + 0x1074]
MOV dword ptr [ESP + 0x44],0x0
MOV dword ptr [ESP + 0x48],0x0
MOV dword ptr [ESP + 0x4c],0x0
MOV dword ptr [ESP + 0x54],0x0
ADD ESP,0x10
TEST EAX,EAX
JZ 0x00017593
SUB ESP,0xc
PUSH EAX
CALL 0x00013610
ADD ESP,0x10
TEST EAX,EAX
JZ 0x00017fb0
MOV dword ptr [EBP + 0x80],EAX
CMP dword ptr [EBX + 0x228],0x2
JZ 0x000175e2
SUB ESP,0xc
PUSH 0x1c4
CALL 0x000132b0
MOV ESI,dword ptr [EBP + 0x4]
ADD ESP,0x10
LEA EDI,[EAX + 0x4]
MOV ECX,EAX
MOV EDX,dword ptr [ESI]
AND EDI,0xfffffffc
SUB ECX,EDI
MOV dword ptr [EAX],EDX
MOV EDX,dword ptr [ESI + 0x1c0]
SUB ESI,ECX
ADD ECX,0x1c4
SHR ECX,0x2
MOV dword ptr [EAX + 0x1c0],EDX
MOVSD.REP ES:EDI,ESI
MOV dword ptr [EBP + 0x4],EAX
MOV EDX,dword ptr [EBX + 0x228]
MOV dword ptr [EAX + 0x8],EDX
SUB ESP,0xc
PUSH EBP
CALL 0x00013570
MOV EDI,EAX
MOV EAX,dword ptr [EBP + 0x4]
MOV ECX,dword ptr [EAX + 0x8]
XOR EAX,EAX
MOV dword ptr [ESP],EBP
TEST ECX,ECX
SETZ AL
MOV ESI,EAX
CALL 0x00013480
PUSH EBP
PUSH EDI
PUSH ESI
PUSH EAX
CALL 0x00013560
MOV dword ptr [ESP + 0x60],EAX
ADD ESP,0x20
TEST EAX,EAX
JZ 0x00017eb8
MOV EAX,dword ptr [EBP + 0x4]
SUB ESP,0xc
MOV EAX,dword ptr [EAX + 0x4]
MOV dword ptr [ESP + 0x60],EAX
PUSH EBP
CALL 0x00013480
MOV dword ptr [ESP],EBP
MOV dword ptr [ESP + 0x68],EAX
CALL 0x00013570
MOV dword ptr [ESP],EBP
MOV dword ptr [ESP + 0x6c],EAX
MOV EAX,dword ptr [EBX + 0x1070]
MOV dword ptr [ESP + 0xe8],EAX
CALL 0x00013400
MOV dword ptr [ESP + 0xcc],0x8
MOV dword ptr [ESP + 0xc8],EAX
MOV EAX,dword ptr [EBP + 0x4]
MOV dword ptr [ESP + 0xd0],0x3
MOV dword ptr [ESP + 0xd4],0x0
MOV EAX,dword ptr [EAX + 0x8]
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00017bd0
MOV dword ptr [ESP + 0x60],0x0
MOV dword ptr [ESP + 0xb4],0x0
SUB ESP,0xc
PUSH dword ptr [ESP + 0x18]
CALL 0x00013290
MOV EAX,dword ptr [EBP + 0x4]
MOV dword ptr [ESP],EBP
CALL dword ptr [EAX + 0x1b4]
ADD ESP,0x10
TEST EAX,EAX
JS 0x00017bf0
JZ 0x0001770b
SUB ESP,0xc
PUSH EAX
CALL 0x000132b0
MOV EDX,dword ptr [EBP + 0x4]
MOV dword ptr [ESP + 0x48],EAX
ADD ESP,0xc
PUSH dword ptr [EBX + 0x105c]
PUSH EAX
PUSH EBP
CALL dword ptr [EDX + 0x1b8]
MOV dword ptr [ESP + 0x4c],EAX
ADD ESP,0x10
TEST EAX,EAX
JS 0x00017bfe
LEA EDX,[EBX + 0xfffa44e0]
PUSH EDX
PUSH 0x4
PUSH EAX
PUSH dword ptr [ESP + 0x44]
CALL 0x00013710
ADD ESP,0x10
MOV EAX,dword ptr [EBX + 0x1064]
SUB ESP,0x4
MOV dword ptr [ESP + 0x7c],EAX
MOV EAX,dword ptr [EBX + 0x1060]
MOV dword ptr [ESP + 0x84],EAX
LEA EAX,[EBX + 0xfffa8770]
PUSH dword ptr [ESP + 0x10]
PUSH EAX
PUSH EBP
CALL 0x00013780
MOV EAX,dword ptr [ESP + 0x48]
ADD ESP,0x10
TEST EAX,EAX
JZ 0x0001774d
SUB ESP,0xc
PUSH EAX
CALL 0x00013120
ADD ESP,0x10
SUB ESP,0xc
PUSH dword ptr [EBX + 0x1064]
CALL 0x00013120
MOV ESI,dword ptr [EBX + 0x10ac]
ADD ESP,0x10
MOV EAX,dword ptr [EBX + 0x106c]
TEST ESI,ESI
JZ 0x00017220
PUSH 0x1
PUSH dword ptr [EBX + 0x1068]
PUSH EAX
PUSH EBP
CALL 0x00038fb0
ADD ESP,0x10
TEST EAX,EAX
JZ 0x00017b58
MOV ECX,dword ptr [EBX + 0x10a8]
SUB ESP,0x8
XOR EDX,EDX
TEST ECX,ECX
SETNZ DL
PUSH EDX
PUSH dword ptr [EBX + 0xffffffe4]
PUSH dword ptr [EBX + 0x106c]
PUSH EBP
PUSH EAX
MOV EAX,dword ptr [EBX + 0xffffffdc]
PUSH dword ptr [EAX]
CALL 0x00038c60
ADD ESP,0x20
TEST EAX,EAX
JZ 0x00017f00
MOV EAX,dword ptr [EBX + 0x106c]
JMP 0x00017220
MOV EAX,dword ptr [EBP + 0x28]
SUB ESP,0x4
SHR EAX,0x5
AND EAX,0x1
MOV dword ptr [ESP + 0x4c],EAX
LEA EAX,[ESP + 0x4c]
PUSH EAX
LEA EAX,[EBX + 0xfffa60d0]
PUSH EAX
PUSH EBP
CALL 0x00013780
ADD ESP,0x10
MOV EAX,dword ptr [EBX + 0x10a8]
OR EAX,dword ptr [EBX + 0x10a4]
JNZ 0x00017007
MOV EAX,dword ptr [EBP + 0x4]
SUB ESP,0x4
MOV ESI,dword ptr [EBP]
MOV EDI,dword ptr [EAX]
LEA EAX,[EBX + 0xfffdc72b]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000131f0
ADD ESP,0xc
PUSH EDI
PUSH ESI
PUSH EAX
CALL 0x000130b0
MOV EAX,dword ptr [EBX + 0x10ec]
ADD ESP,0x10
TEST EAX,EAX
JZ 0x00017015
NOP
MOV EAX,dword ptr [EBX + 0xffffffdc]
PUSH 0x0
PUSH 0x1
PUSH EBP
PUSH dword ptr [EAX]
CALL 0x000457f0
MOV EAX,dword ptr [EBX + 0x1100]
ADD ESP,0x10
TEST EAX,EAX
JZ 0x00017023
SUB ESP,0xc
PUSH EBP
CALL 0x00013570
MOV dword ptr [ESP],EBP
MOV ESI,EAX
CALL 0x00013480
POP EDX
POP ECX
PUSH ESI
PUSH EAX
CALL 0x000134b0
ADD ESP,0xc
MOV ESI,EAX
LEA EAX,[EBX + 0xfffdc744]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000131f0
POP EDI
POP EDX
PUSH ESI
PUSH EAX
CALL 0x000130b0
ADD ESP,0xc
LEA EAX,[EBX + 0xfffdc757]
MOV ESI,dword ptr [EBP + 0x28]
PUSH 0x5
PUSH EAX
SHR ESI,0x5
PUSH 0x0
AND ESI,0x3ff
CALL 0x000131f0
POP ECX
POP EDI
PUSH ESI
PUSH EAX
CALL 0x000130b0
MOV EAX,dword ptr [EBP + 0x28]
ADD ESP,0x10
LEA EDX,[EBX + 0xfffdca07]
SHR EAX,0x5
AND EAX,0xfffff
TEST AL,0x1
JNZ 0x00017c10
TEST AL,0x2
JNZ 0x00017c43
TEST AL,0x4
JNZ 0x00017c76
TEST AL,0x8
JNZ 0x00017ca9
TEST AL,0x10
JNZ 0x00017cdc
TEST AL,0x20
JNZ 0x00017d0f
TEST AL,0x40
JNZ 0x00017d42
TEST AL,0x80
JNZ 0x00017d75
TEST AH,0x1
JNZ 0x00017da9
TEST AH,0x2
JNZ 0x00017ddd
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdc7c9]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000131f0
MOV dword ptr [ESP],EAX
CALL 0x000130b0
MOV EAX,dword ptr [EBX + 0xffffffdc]
ADD ESP,0xc
PUSH dword ptr [EBP + 0x70]
PUSH dword ptr [EAX]
PUSH EBP
CALL 0x00013750
MOV dword ptr [ESP],0xa
CALL 0x00013520
ADD ESP,0x10
JMP 0x00017023
MOV dword ptr [ESP + 0x48],0xd
LEA EAX,[EBX + 0xfffdc7ed]
SUB ESP,0x4
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000131f0
MOV dword ptr [ESP],EAX
CALL 0x000130b0
ADD ESP,0x10
MOV EDI,dword ptr [EBX + 0x10b4]
LEA EAX,[ESP + 0x48]
MOV dword ptr [ESP + 0xc],EAX
TEST EDI,EDI
JNZ 0x00017e28
MOV ESI,dword ptr [ESP + 0x48]
LEA EAX,[EBX + 0xfffdc1f8]
SUB ESP,0x4
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000131f0
ADD ESP,0xc
LEA EDX,[EBX + 0xfffdc7f8]
PUSH EDX
LEA EDX,[EBX + 0xfffdc7fc]
PUSH 0xa
PUSH EDX
LEA EDX,[EBX + 0xfffe1b53]
PUSH 0xa
PUSH EDX
PUSH ESI
PUSH EAX
CALL 0x000130b0
MOV ESI,dword ptr [EBX + 0x10b4]
ADD ESP,0x20
TEST ESI,ESI
JNZ 0x00017e00
SUB ESP,0xc
PUSH 0xa
CALL 0x00013520
ADD ESP,0xc
LEA EAX,[EBX + 0xfffa6160]
PUSH dword ptr [ESP + 0x10]
PUSH EAX
PUSH EBP
CALL 0x00013780
ADD ESP,0x10
JMP 0x000170eb
LEA ECX,[EBX + 0xfffdc864]
LEA EDX,[EBX + 0xfffdc821]
MOV EAX,EBP
CALL 0x00014db0
LEA ECX,[EBX + 0xfffdc827]
LEA EDX,[EBX + 0xfffdc835]
MOV EAX,EBP
CALL 0x00014db0
LEA ECX,[EBX + 0xfffdc840]
LEA EDX,[EBX + 0xfffdc84f]
MOV EAX,EBP
CALL 0x00014db0
LEA ECX,[EBX + 0xfffdc85b]
LEA EDX,[EBX + 0xfffdc86d]
MOV EAX,EBP
CALL 0x00014db0
LEA ECX,[EBX + 0xfffdc87d]
LEA EDX,[EBX + 0xfffdc88b]
MOV EAX,EBP
CALL 0x00014db0
JMP 0x000171c6
MOV EAX,EBP
CALL 0x00015f30
JMP 0x000171b8
MOV EAX,0x1
CALL 0x00016db0
JMP 0x000171aa
XOR EAX,EAX
CALL 0x00016db0
JMP 0x0001719c
SUB ESP,0x4
LEA EAX,[EBX + 0xfffa6840]
PUSH 0x0
PUSH EAX
PUSH EBP
CALL 0x00013780
ADD ESP,0x10
JMP 0x000171fe
SUB ESP,0xc
PUSH EAX
CALL 0x000132b0
ADD ESP,0x10
MOV ESI,EAX
JMP 0x000170b8
SUB ESP,0xc
MOV EAX,dword ptr [EBP + 0x4]
PUSH EBP
CALL dword ptr [EAX + 0x1b4]
MOV ESI,EAX
ADD ESP,0x10
TEST EAX,EAX
JS 0x00017bfe
SUB ESP,0xc
LEA EAX,[EBX + 0xfffdc899]
PUSH EAX
CALL 0x000130b0
ADD ESP,0x10
TEST ESI,ESI
JNZ 0x00017e48
SUB ESP,0xc
LEA EAX,[EBX + 0xfffdc8b4]
PUSH EAX
CALL 0x000133c0
ADD ESP,0x10
JMP 0x000171f0
MOV EDX,dword ptr [EBX + 0x106c]
JMP 0x000173fc
MOV ECX,dword ptr [EBX + 0x10d0]
TEST ECX,ECX
JNZ 0x000177c3
CALL 0x00034950
MOV EAX,EBP
CALL 0x00015f30
JMP 0x000177c3
MOV dword ptr [EBX + 0x1068],0x0
XOR ESI,ESI
JMP 0x000170d7
MOV EAX,dword ptr [EBX + 0xffffffdc]
SUB ESP,0x8
PUSH dword ptr [EAX]
PUSH 0xa
CALL 0x00013690
ADD ESP,0x10
JMP 0x0001706b
SUB ESP,0xc
PUSH EAX
CALL 0x000132b0
ADD ESP,0x10
MOV ESI,EAX
JMP 0x00017120
CMP EAX,0x1
JZ 0x00017f60
MOV dword ptr [ESP + 0x60],0x2
JMP 0x000176a0
MOV EDI,dword ptr [EBX + 0x10f0]
TEST EDI,EDI
JZ 0x0001770b
SUB ESP,0xc
PUSH dword ptr [EBP]
CALL 0x000450f0
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdc766]
PUSH EAX
LEA EAX,[EBX + 0xfffe0608]
PUSH EDX
PUSH EAX
CALL 0x000130b0
MOV EAX,dword ptr [EBP + 0x28]
ADD ESP,0x10
LEA EDX,[EBX + 0xfffdc754]
SHR EAX,0x5
AND EAX,0xfffff
TEST AL,0x2
JZ 0x000178e9
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdc770]
PUSH EAX
LEA EAX,[EBX + 0xfffe0608]
PUSH EDX
PUSH EAX
CALL 0x000130b0
MOV EAX,dword ptr [EBP + 0x28]
ADD ESP,0x10
LEA EDX,[EBX + 0xfffdc754]
SHR EAX,0x5
AND EAX,0xfffff
TEST AL,0x4
JZ 0x000178f1
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdc777]
PUSH EAX
LEA EAX,[EBX + 0xfffe0608]
PUSH EDX
PUSH EAX
CALL 0x000130b0
MOV EAX,dword ptr [EBP + 0x28]
ADD ESP,0x10
LEA EDX,[EBX + 0xfffdc754]
SHR EAX,0x5
AND EAX,0xfffff
TEST AL,0x8
JZ 0x000178f9
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdc782]
PUSH EAX
LEA EAX,[EBX + 0xfffe0608]
PUSH EDX
PUSH EAX
CALL 0x000130b0
MOV EAX,dword ptr [EBP + 0x28]
ADD ESP,0x10
LEA EDX,[EBX + 0xfffdc754]
SHR EAX,0x5
AND EAX,0xfffff
TEST AL,0x10
JZ 0x00017901
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdc78c]
PUSH EAX
LEA EAX,[EBX + 0xfffe0608]
PUSH EDX
PUSH EAX
CALL 0x000130b0
MOV EAX,dword ptr [EBP + 0x28]
ADD ESP,0x10
LEA EDX,[EBX + 0xfffdc754]
SHR EAX,0x5
AND EAX,0xfffff
TEST AL,0x20
JZ 0x00017909
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdc795]
PUSH EAX
LEA EAX,[EBX + 0xfffe0608]
PUSH EDX
PUSH EAX
CALL 0x000130b0
MOV EAX,dword ptr [EBP + 0x28]
ADD ESP,0x10
LEA EDX,[EBX + 0xfffdc754]
SHR EAX,0x5
AND EAX,0xfffff
TEST AL,0x40
JZ 0x00017911
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdc7a0]
PUSH EAX
LEA EAX,[EBX + 0xfffe0608]
PUSH EDX
PUSH EAX
CALL 0x000130b0
MOV EAX,dword ptr [EBP + 0x28]
ADD ESP,0x10
LEA EDX,[EBX + 0xfffdc754]
SHR EAX,0x5
AND EAX,0xfffff
TEST AL,0x80
JZ 0x00017919
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdc7a8]
PUSH EAX
LEA EAX,[EBX + 0xfffe0608]
PUSH EDX
PUSH EAX
CALL 0x000130b0
MOV EAX,dword ptr [EBP + 0x28]
ADD ESP,0x10
LEA EDX,[EBX + 0xfffdc754]
SHR EAX,0x5
AND EAX,0xfffff
TEST AH,0x1
JZ 0x00017922
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdc7b0]
PUSH EAX
LEA EAX,[EBX + 0xfffe0608]
PUSH EDX
PUSH EAX
CALL 0x000130b0
MOV EAX,dword ptr [EBP + 0x28]
ADD ESP,0x10
LEA EDX,[EBX + 0xfffdc754]
SHR EAX,0x5
AND EAX,0xfffff
TEST AH,0x2
JZ 0x0001792b
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdc7b8]
PUSH EAX
LEA EAX,[EBX + 0xfffe0608]
PUSH EDX
PUSH EAX
CALL 0x000130b0
ADD ESP,0x10
JMP 0x0001792b
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdc800]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000131f0
MOV dword ptr [ESP],EAX
CALL 0x000130b0
ADD ESP,0x10
JMP 0x000179f7
SUB ESP,0x4
LEA EAX,[EBX + 0xfffa6d60]
PUSH dword ptr [ESP + 0x10]
PUSH EAX
PUSH EBP
CALL 0x00013780
ADD ESP,0x10
JMP 0x000179ac
SUB ESP,0xc
PUSH ESI
CALL 0x000132b0
ADD ESP,0xc
MOV ESI,EAX
MOV EAX,dword ptr [EBP + 0x4]
PUSH dword ptr [EBX + 0x105c]
PUSH ESI
PUSH EBP
CALL dword ptr [EAX + 0x1b8]
MOV EDI,EAX
ADD ESP,0x10
TEST EAX,EAX
JS 0x00017bfe
JZ 0x00017f40
SUB ESP,0xc
PUSH 0xa
CALL 0x00013520
MOV ECX,ESI
XOR EDX,EDX
MOV EAX,EBP
MOV dword ptr [ESP],EDI
CALL 0x000153f0
LEA EAX,[EBX + 0xfffe0850]
MOV dword ptr [ESP],EAX
CALL 0x000133c0
ADD ESP,0x10
SUB ESP,0xc
PUSH ESI
CALL 0x00013120
ADD ESP,0x10
JMP 0x000171f0
SUB ESP,0xc
PUSH EBP
CALL 0x00013480
POP EDX
POP ECX
PUSH 0x0
PUSH EAX
CALL 0x000134b0
ADD ESP,0xc
MOV ESI,EAX
LEA EAX,[EBX + 0xfffdc224]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000131f0
POP EDI
POP EDX
PUSH ESI
PUSH EAX
CALL 0x000451b0
ADD ESP,0x10
MOV dword ptr [EBX + 0x1110],0x1
JMP 0x0001720c
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdc24c]
MOV ESI,dword ptr [EBP]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000131f0
POP EDI
POP EBP
PUSH ESI
PUSH EAX
CALL 0x000451b0
MOV EAX,dword ptr [EBX + 0x106c]
ADD ESP,0x10
MOV dword ptr [EBX + 0x1110],0x1
JMP 0x00017220
SUB ESP,0xc
LEA EAX,[EBX + 0xfffdc8b4]
PUSH EAX
CALL 0x000133c0
ADD ESP,0x10
JMP 0x00017ea3
MOV dword ptr [ESP + 0x60],0x1
MOV dword ptr [ESP + 0xb4],0x1
JMP 0x000176a0
MOV ESI,dword ptr [EBP]
PUSH EAX
LEA EAX,[EBX + 0xfffdc1d0]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000131f0
POP EDX
POP ECX
PUSH ESI
PUSH EAX
CALL 0x000451b0
ADD ESP,0xc
LEA EAX,[EBX + 0xfffdc7db]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000131f0
MOV dword ptr [ESP],EAX
CALL 0x000450f0
LEA EAX,[EBX + 0xfffdc8c7]
PUSH EDI
MOV ESI,dword ptr [EBX + 0x1074]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000131f0
POP EBP
POP EDX
PUSH ESI
PUSH EAX
CALL 0x00045180
SUB ESP,0xc
PUSH ESI
CALL 0x000450f0
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n/* WARNING: Type propagation algorithm not settling */\n\nvoid __regparm3 FUN_00016fd0(undefined4 *param_1)\n\n{\n  int *piVar1;\n  undefined4 uVar2;\n  int iVar3;\n  int *__dest;\n  undefined *puVar4;\n  undefined4 *puVar5;\n  char *pcVar6;\n  undefined4 uVar7;\n  int iVar8;\n  uint uVar9;\n  void *pvVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  undefined4 *puVar13;\n  byte *pbVar14;\n  undefined4 *puVar15;\n  bool bVar16;\n  bool bVar17;\n  bool bVar18;\n  byte bVar19;\n  int *local_f0;\n  int *local_ec;\n  int local_e8;\n  undefined4 *local_d0 [2];\n  undefined4 local_c8;\n  void *local_c4;\n  size_t local_c0;\n  int local_bc;\n  undefined4 local_b8;\n  uint local_b4 [2];\n  undefined4 **local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  undefined4 local_a0;\n  undefined4 local_9c;\n  int *local_84;\n  size_t local_7c;\n  code *local_68;\n  code *local_64;\n  undefined4 local_48;\n  undefined4 local_44;\n  undefined4 local_40;\n  undefined4 local_3c;\n  undefined4 local_38;\n  undefined4 local_24;\n  undefined4 uStack_14;\n  \n  bVar19 = 0;\n  uStack_14 = 0x16fdb;\n  if (DAT_0007109c == 0) {\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\nLAB_00017807:\n      uVar2 = *param_1;\n      uVar7 = *(undefined4 *)param_1[1];\n      pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(pcVar6,uVar2,uVar7);\n    }\n  }\n  else {\n    local_b4[0] = (uint)param_1[10] >> 5 & 1;\n    bfd_map_over_sections(param_1,FUN_000160d0,local_b4);\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) goto LAB_00017807;\n  }\n  if (DAT_000710ec != 0) {\n    FUN_000457f0(*(undefined4 *)PTR_stdout_0006ffdc,param_1,1,0);\n  }\n  if (DAT_00071100 != 0) {\n    uVar2 = bfd_get_mach(param_1);\n    uVar7 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar7,uVar2);\n    pcVar6 = (char *)dcgettext(0,"architecture: %s, ",5);\n    printf(pcVar6,uVar2);\n    uVar9 = param_1[10];\n    pcVar6 = (char *)dcgettext(0,"flags 0x%08x:\n",5);\n    printf(pcVar6,uVar9 >> 5 & 0x3ff);\n    pcVar6 = "";\n    uVar9 = (uint)param_1[10] >> 5;\n    if ((uVar9 & 1) != 0) {\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 2) != 0) {\n      printf("%s%s",pcVar6,"EXEC_P");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 4) != 0) {\n      printf("%s%s",pcVar6,"HAS_LINENO");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 8) != 0) {\n      printf("%s%s",pcVar6,"HAS_DEBUG");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x10) != 0) {\n      printf("%s%s",pcVar6,"HAS_SYMS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x20) != 0) {\n      printf("%s%s",pcVar6,"HAS_LOCALS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x40) != 0) {\n      printf("%s%s",pcVar6,"DYNAMIC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x80) != 0) {\n      printf("%s%s",pcVar6,"WP_TEXT");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x100) != 0) {\n      printf("%s%s",pcVar6,"D_PAGED");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x200) != 0) {\n      printf("%s%s",pcVar6,"BFD_IS_RELAXABLE");\n    }\n    pcVar6 = (char *)dcgettext(0,"\nstart address 0x",5);\n    printf(pcVar6);\n    bfd_fprintf_vma(param_1,*(undefined4 *)PTR_stdout_0006ffdc,param_1[0x1c]);\n    putchar(10);\n  }\n  if (DAT_000710e8 != 0) {\n    (**(code **)(param_1[1] + 0xc4))(param_1,*(undefined4 *)PTR_stdout_0006ffdc);\n  }\n  if (DAT_000710e4 != 0) {\n    uVar2 = dcgettext(0,"option -P/--private not supported by this file",5);\n    FUN_000451b0(uVar2);\n  }\n  if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\n    putc(10,*(FILE **)PTR_stdout_0006ffdc);\n  }\n  pvVar10 = DAT_0007106c;\n  if ((((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0) || DAT_000710ac != 0) ||\n      DAT_000710d0 != 0) {\n    if ((*(byte *)((int)param_1 + 0x29) & 2) == 0) {\n      DAT_00071068 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);\n      if (iVar3 < 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(uVar2);\n      }\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);\n      if (DAT_00071068 < 0) goto LAB_00017bfe;\n    }\n  }\n  DAT_0007106c = pvVar10;\n  if (DAT_00071104 != 0) {\n    local_b4[0] = 0xd;\n    pcVar6 = (char *)dcgettext(0,"Sections:\n",5);\n    printf(pcVar6);\n    if (DAT_000710b4 != 0) {\n      bfd_map_over_sections(param_1,FUN_00016d60,local_b4);\n    }\n    uVar9 = local_b4[0];\n    pcVar6 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);\n    printf(pcVar6,uVar9,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);\n    if (DAT_000710b4 != 0) {\n      pcVar6 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar6);\n    }\n    putchar(10);\n    bfd_map_over_sections(param_1,FUN_00016160,local_b4);\n  }\n  if (DAT_000710f8 == 0 && DAT_000710f0 == 0) {\n    if (DAT_000710c4 != 0) {\n      iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n      pvVar10 = DAT_0007105c;\n      if (0 < iVar3) goto LAB_000170fd;\n      goto LAB_00017145;\n    }\n  }\n  else {\nLAB_000170fd:\n    iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n    if (iVar3 < 0) {\n      uVar2 = *param_1;\n      if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(uVar2);\n      }\n      uVar7 = dcgettext(0,"%s: not a dynamic object",5);\n      FUN_000451b0(uVar7,uVar2);\n      DAT_00071110 = 1;\n      DAT_00071050 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);\n      if (DAT_00071050 < 0) goto LAB_00017bfe;\n    }\nLAB_00017145:\n    DAT_0007105c = pvVar10;\n    if ((DAT_000710c4 != 0) &&\n       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0)) {\n      DAT_00071054 = 0;\n    }\n  }\n  if (DAT_000710fc != 0) {\n    FUN_00016db0();\n  }\n  if (DAT_000710f8 != 0) {\n    FUN_00016db0();\n  }\n  if (DAT_000710d0 != 0) {\n    FUN_00015f30();\n  }\n  if (DAT_000710cc != 0) {\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n  }\n  if (DAT_000710f4 == 0) {\nLAB_00017355:\n    if (DAT_000710f0 != 0) {\n      if (DAT_000710c4 != 0) goto LAB_00017371;\n      iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n      if (iVar3 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (iVar3 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }\n    }\nLAB_000171f0:\n    if (DAT_00071108 != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(param_1,FUN_00016840,0);\n    }\n    if (DAT_000710c4 == 0) goto joined_r0x0001721a;\n  }\n  else {\n    if (DAT_000710c4 == 0) {\n      bfd_map_over_sections(param_1,FUN_00018570,0);\n      goto LAB_00017355;\n    }\n    if (DAT_000710f0 == 0) goto LAB_000171f0;\nLAB_00017371:\n    if (DAT_00071108 != 0) goto LAB_00017ac0;\n  }\n  DAT_0007102c = 0;\n  DAT_00071038 = 0;\n  DAT_00071034 = 0xffffffff;\n  DAT_00071060 = DAT_00071068;\n  if (DAT_00071068 == 0) {\n    DAT_00071060 = DAT_00071050;\n  }\n  DAT_00071030 = 0;\n  __dest = (int *)xmalloc((DAT_00071060 + DAT_00071054) * 4);\n  local_e8 = DAT_00071060;\n  pvVar10 = DAT_0007106c;\n  if (DAT_00071068 == 0) {\n    pvVar10 = DAT_0007105c;\n  }\n  DAT_00071064 = __dest;\n  memcpy(__dest,pvVar10,DAT_00071060 << 2);\n  puVar4 = PTR__bfd_std_section_0006ffd8 + 0xa8;\n  local_f0 = __dest;\n  local_ec = __dest;\nLAB_00017428:\n  local_e8 = local_e8 + -1;\n  if (-1 < local_e8) {\n    while( true ) {\n      piVar1 = local_f0 + 1;\n      iVar3 = *local_f0;\n      pbVar12 = *(byte **)(iVar3 + 4);\n      local_f0 = piVar1;\n      if ((pbVar12 == (byte *)0x0) || (*pbVar12 == 0)) break;\n      bVar16 = false;\n      bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0;\n      if (!bVar18) {\n        iVar8 = 4;\n        pbVar11 = pbVar12;\n        pbVar14 = &DAT_0004c8bd;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);\n        bVar17 = false;\n        bVar16 = (!bVar16 && !bVar18) == bVar16;\n        if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }\n      }\n      if ((*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)) break;\n      *local_ec = iVar3;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }\n    goto LAB_00017428;\n  }\nLAB_000174ab:\n  DAT_00071060 = (int)local_ec - (int)__dest >> 2;\n  if (0 < DAT_00071054) {\n    DAT_00071060 = DAT_00071060 + DAT_00071054;\n    pvVar10 = DAT_00071058;\n    do {\n      *local_ec = (int)pvVar10;\n      local_ec = local_ec + 1;\n      pvVar10 = (void *)((int)pvVar10 + 0x18);\n    } while (__dest + DAT_00071060 != local_ec);\n  }\n  qsort(__dest,DAT_00071060,4,FUN_00015990);\n  init_disassemble_info(local_b4,*(undefined4 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0);\n  local_ac = local_d0;\n  local_68 = FUN_000153c0;\n  local_64 = FUN_00014c20;\n  local_c8 = 0;\n  local_c4 = (void *)0x0;\n  local_c0 = 0;\n  local_b8 = 0;\n  local_d0[0] = param_1;\n  if (DAT_00071074 != 0) {\n    iVar8 = bfd_scan_arch(DAT_00071074);\n    iVar3 = DAT_00071074;\n    if (iVar8 == 0) {\n      uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    /* WARNING: Subroutine does not return */\n      FUN_00045180(uVar2,iVar3);\n    }\n    param_1[0x20] = iVar8;\n  }\n  if (DAT_00070228 != 2) {\n    puVar5 = (undefined4 *)xmalloc(0x1c4);\n    puVar13 = (undefined4 *)param_1[1];\n    iVar3 = (int)puVar5 - (int)((uint)(puVar5 + 1) & 0xfffffffc);\n    *puVar5 = *puVar13;\n    puVar5[0x70] = puVar13[0x70];\n    puVar13 = (undefined4 *)((int)puVar13 - iVar3);\n    puVar15 = (undefined4 *)((uint)(puVar5 + 1) & 0xfffffffc);\n    for (uVar9 = iVar3 + 0x1c4U >> 2; uVar9 != 0; uVar9 = uVar9 - 1) {\n      *puVar15 = *puVar13;\n      puVar13 = puVar13 + (uint)bVar19 * -2 + 1;\n      puVar15 = puVar15 + (uint)bVar19 * -2 + 1;\n    }\n    param_1[1] = puVar5;\n    puVar5[2] = DAT_00070228;\n  }\n  uVar2 = bfd_get_mach(param_1);\n  iVar3 = *(int *)(param_1[1] + 8);\n  uVar7 = bfd_get_arch(param_1);\n  local_bc = disassembler(uVar7,iVar3 == 0,uVar2,param_1);\n  if (local_bc == 0) {\n    uVar2 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar2,0);\n    uVar7 = dcgettext(0,"can\'t disassemble for architecture %s\n",5);\n    FUN_000451b0(uVar7,uVar2);\n    DAT_00071110 = 1;\n  }\n  else {\n    local_a8 = *(undefined4 *)(param_1[1] + 4);\n    local_a4 = bfd_get_arch(param_1);\n    local_a0 = bfd_get_mach(param_1);\n    local_24 = DAT_00071070;\n    local_44 = bfd_octets_per_byte(param_1);\n    local_40 = 8;\n    local_3c = 3;\n    local_38 = 0;\n    if (*(int *)(param_1[1] + 8) == 0) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (*(int *)(param_1[1] + 8) == 1) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }\n    disassemble_init_for_target(local_b4);\n    iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n    if (iVar3 < 0) {\n      if (DAT_000710f0 != 0) {\nLAB_00017bfe:\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(*param_1);\n      }\n    }\n    else if (iVar3 != 0) {\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }\n    local_84 = DAT_00071064;\n    local_7c = DAT_00071060;\n    bfd_map_over_sections(param_1,FUN_00018770,local_b4);\n    if (local_c4 != (void *)0x0) {\n      free(local_c4);\n    }\n    free(DAT_00071064);\n  }\njoined_r0x0001721a:\n  if (DAT_000710ac != 0) {\n    iVar3 = FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1);\n    if (iVar3 == 0) {\n      if (DAT_000710d0 == 0) {\n        FUN_00034950();\n        FUN_00015f30();\n      }\n    }\n    else {\n      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);\n      if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }\n    }\n  }\n  if (DAT_0007106c != (void *)0x0) {\n    free(DAT_0007106c);\n    DAT_0007106c = (void *)0x0;\n  }\n  if (DAT_0007105c != (void *)0x0) {\n    free(DAT_0007105c);\n    DAT_0007105c = (void *)0x0;\n  }\n  if (DAT_00071058 != (void *)0x0) {\n    free(DAT_00071058);\n    DAT_00071058 = (void *)0x0;\n  }\n  DAT_00071068 = 0;\n  DAT_00071050 = 0;\n  DAT_00071054 = 0;\n  return;\n}\n\n" comment comment (function_definition "void __regparm3 FUN_00016fd0(undefined4 *param_1)\n\n{\n  int *piVar1;\n  undefined4 uVar2;\n  int iVar3;\n  int *__dest;\n  undefined *puVar4;\n  undefined4 *puVar5;\n  char *pcVar6;\n  undefined4 uVar7;\n  int iVar8;\n  uint uVar9;\n  void *pvVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  undefined4 *puVar13;\n  byte *pbVar14;\n  undefined4 *puVar15;\n  bool bVar16;\n  bool bVar17;\n  bool bVar18;\n  byte bVar19;\n  int *local_f0;\n  int *local_ec;\n  int local_e8;\n  undefined4 *local_d0 [2];\n  undefined4 local_c8;\n  void *local_c4;\n  size_t local_c0;\n  int local_bc;\n  undefined4 local_b8;\n  uint local_b4 [2];\n  undefined4 **local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  undefined4 local_a0;\n  undefined4 local_9c;\n  int *local_84;\n  size_t local_7c;\n  code *local_68;\n  code *local_64;\n  undefined4 local_48;\n  undefined4 local_44;\n  undefined4 local_40;\n  undefined4 local_3c;\n  undefined4 local_38;\n  undefined4 local_24;\n  undefined4 uStack_14;\n  \n  bVar19 = 0;\n  uStack_14 = 0x16fdb;\n  if (DAT_0007109c == 0) {\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\nLAB_00017807:\n      uVar2 = *param_1;\n      uVar7 = *(undefined4 *)param_1[1];\n      pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(pcVar6,uVar2,uVar7);\n    }\n  }\n  else {\n    local_b4[0] = (uint)param_1[10] >> 5 & 1;\n    bfd_map_over_sections(param_1,FUN_000160d0,local_b4);\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) goto LAB_00017807;\n  }\n  if (DAT_000710ec != 0) {\n    FUN_000457f0(*(undefined4 *)PTR_stdout_0006ffdc,param_1,1,0);\n  }\n  if (DAT_00071100 != 0) {\n    uVar2 = bfd_get_mach(param_1);\n    uVar7 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar7,uVar2);\n    pcVar6 = (char *)dcgettext(0,"architecture: %s, ",5);\n    printf(pcVar6,uVar2);\n    uVar9 = param_1[10];\n    pcVar6 = (char *)dcgettext(0,"flags 0x%08x:\n",5);\n    printf(pcVar6,uVar9 >> 5 & 0x3ff);\n    pcVar6 = "";\n    uVar9 = (uint)param_1[10] >> 5;\n    if ((uVar9 & 1) != 0) {\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 2) != 0) {\n      printf("%s%s",pcVar6,"EXEC_P");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 4) != 0) {\n      printf("%s%s",pcVar6,"HAS_LINENO");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 8) != 0) {\n      printf("%s%s",pcVar6,"HAS_DEBUG");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x10) != 0) {\n      printf("%s%s",pcVar6,"HAS_SYMS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x20) != 0) {\n      printf("%s%s",pcVar6,"HAS_LOCALS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x40) != 0) {\n      printf("%s%s",pcVar6,"DYNAMIC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x80) != 0) {\n      printf("%s%s",pcVar6,"WP_TEXT");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x100) != 0) {\n      printf("%s%s",pcVar6,"D_PAGED");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x200) != 0) {\n      printf("%s%s",pcVar6,"BFD_IS_RELAXABLE");\n    }\n    pcVar6 = (char *)dcgettext(0,"\nstart address 0x",5);\n    printf(pcVar6);\n    bfd_fprintf_vma(param_1,*(undefined4 *)PTR_stdout_0006ffdc,param_1[0x1c]);\n    putchar(10);\n  }\n  if (DAT_000710e8 != 0) {\n    (**(code **)(param_1[1] + 0xc4))(param_1,*(undefined4 *)PTR_stdout_0006ffdc);\n  }\n  if (DAT_000710e4 != 0) {\n    uVar2 = dcgettext(0,"option -P/--private not supported by this file",5);\n    FUN_000451b0(uVar2);\n  }\n  if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\n    putc(10,*(FILE **)PTR_stdout_0006ffdc);\n  }\n  pvVar10 = DAT_0007106c;\n  if ((((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0) || DAT_000710ac != 0) ||\n      DAT_000710d0 != 0) {\n    if ((*(byte *)((int)param_1 + 0x29) & 2) == 0) {\n      DAT_00071068 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);\n      if (iVar3 < 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(uVar2);\n      }\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);\n      if (DAT_00071068 < 0) goto LAB_00017bfe;\n    }\n  }\n  DAT_0007106c = pvVar10;\n  if (DAT_00071104 != 0) {\n    local_b4[0] = 0xd;\n    pcVar6 = (char *)dcgettext(0,"Sections:\n",5);\n    printf(pcVar6);\n    if (DAT_000710b4 != 0) {\n      bfd_map_over_sections(param_1,FUN_00016d60,local_b4);\n    }\n    uVar9 = local_b4[0];\n    pcVar6 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);\n    printf(pcVar6,uVar9,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);\n    if (DAT_000710b4 != 0) {\n      pcVar6 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar6);\n    }\n    putchar(10);\n    bfd_map_over_sections(param_1,FUN_00016160,local_b4);\n  }\n  if (DAT_000710f8 == 0 && DAT_000710f0 == 0) {\n    if (DAT_000710c4 != 0) {\n      iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n      pvVar10 = DAT_0007105c;\n      if (0 < iVar3) goto LAB_000170fd;\n      goto LAB_00017145;\n    }\n  }\n  else {\nLAB_000170fd:\n    iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n    if (iVar3 < 0) {\n      uVar2 = *param_1;\n      if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(uVar2);\n      }\n      uVar7 = dcgettext(0,"%s: not a dynamic object",5);\n      FUN_000451b0(uVar7,uVar2);\n      DAT_00071110 = 1;\n      DAT_00071050 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);\n      if (DAT_00071050 < 0) goto LAB_00017bfe;\n    }\nLAB_00017145:\n    DAT_0007105c = pvVar10;\n    if ((DAT_000710c4 != 0) &&\n       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0)) {\n      DAT_00071054 = 0;\n    }\n  }\n  if (DAT_000710fc != 0) {\n    FUN_00016db0();\n  }\n  if (DAT_000710f8 != 0) {\n    FUN_00016db0();\n  }\n  if (DAT_000710d0 != 0) {\n    FUN_00015f30();\n  }\n  if (DAT_000710cc != 0) {\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n  }\n  if (DAT_000710f4 == 0) {\nLAB_00017355:\n    if (DAT_000710f0 != 0) {\n      if (DAT_000710c4 != 0) goto LAB_00017371;\n      iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n      if (iVar3 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (iVar3 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }\n    }\nLAB_000171f0:\n    if (DAT_00071108 != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(param_1,FUN_00016840,0);\n    }\n    if (DAT_000710c4 == 0) goto joined_r0x0001721a;\n  }\n  else {\n    if (DAT_000710c4 == 0) {\n      bfd_map_over_sections(param_1,FUN_00018570,0);\n      goto LAB_00017355;\n    }\n    if (DAT_000710f0 == 0) goto LAB_000171f0;\nLAB_00017371:\n    if (DAT_00071108 != 0) goto LAB_00017ac0;\n  }\n  DAT_0007102c = 0;\n  DAT_00071038 = 0;\n  DAT_00071034 = 0xffffffff;\n  DAT_00071060 = DAT_00071068;\n  if (DAT_00071068 == 0) {\n    DAT_00071060 = DAT_00071050;\n  }\n  DAT_00071030 = 0;\n  __dest = (int *)xmalloc((DAT_00071060 + DAT_00071054) * 4);\n  local_e8 = DAT_00071060;\n  pvVar10 = DAT_0007106c;\n  if (DAT_00071068 == 0) {\n    pvVar10 = DAT_0007105c;\n  }\n  DAT_00071064 = __dest;\n  memcpy(__dest,pvVar10,DAT_00071060 << 2);\n  puVar4 = PTR__bfd_std_section_0006ffd8 + 0xa8;\n  local_f0 = __dest;\n  local_ec = __dest;\nLAB_00017428:\n  local_e8 = local_e8 + -1;\n  if (-1 < local_e8) {\n    while( true ) {\n      piVar1 = local_f0 + 1;\n      iVar3 = *local_f0;\n      pbVar12 = *(byte **)(iVar3 + 4);\n      local_f0 = piVar1;\n      if ((pbVar12 == (byte *)0x0) || (*pbVar12 == 0)) break;\n      bVar16 = false;\n      bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0;\n      if (!bVar18) {\n        iVar8 = 4;\n        pbVar11 = pbVar12;\n        pbVar14 = &DAT_0004c8bd;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);\n        bVar17 = false;\n        bVar16 = (!bVar16 && !bVar18) == bVar16;\n        if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }\n      }\n      if ((*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)) break;\n      *local_ec = iVar3;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }\n    goto LAB_00017428;\n  }\nLAB_000174ab:\n  DAT_00071060 = (int)local_ec - (int)__dest >> 2;\n  if (0 < DAT_00071054) {\n    DAT_00071060 = DAT_00071060 + DAT_00071054;\n    pvVar10 = DAT_00071058;\n    do {\n      *local_ec = (int)pvVar10;\n      local_ec = local_ec + 1;\n      pvVar10 = (void *)((int)pvVar10 + 0x18);\n    } while (__dest + DAT_00071060 != local_ec);\n  }\n  qsort(__dest,DAT_00071060,4,FUN_00015990);\n  init_disassemble_info(local_b4,*(undefined4 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0);\n  local_ac = local_d0;\n  local_68 = FUN_000153c0;\n  local_64 = FUN_00014c20;\n  local_c8 = 0;\n  local_c4 = (void *)0x0;\n  local_c0 = 0;\n  local_b8 = 0;\n  local_d0[0] = param_1;\n  if (DAT_00071074 != 0) {\n    iVar8 = bfd_scan_arch(DAT_00071074);\n    iVar3 = DAT_00071074;\n    if (iVar8 == 0) {\n      uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    /* WARNING: Subroutine does not return */\n      FUN_00045180(uVar2,iVar3);\n    }\n    param_1[0x20] = iVar8;\n  }\n  if (DAT_00070228 != 2) {\n    puVar5 = (undefined4 *)xmalloc(0x1c4);\n    puVar13 = (undefined4 *)param_1[1];\n    iVar3 = (int)puVar5 - (int)((uint)(puVar5 + 1) & 0xfffffffc);\n    *puVar5 = *puVar13;\n    puVar5[0x70] = puVar13[0x70];\n    puVar13 = (undefined4 *)((int)puVar13 - iVar3);\n    puVar15 = (undefined4 *)((uint)(puVar5 + 1) & 0xfffffffc);\n    for (uVar9 = iVar3 + 0x1c4U >> 2; uVar9 != 0; uVar9 = uVar9 - 1) {\n      *puVar15 = *puVar13;\n      puVar13 = puVar13 + (uint)bVar19 * -2 + 1;\n      puVar15 = puVar15 + (uint)bVar19 * -2 + 1;\n    }\n    param_1[1] = puVar5;\n    puVar5[2] = DAT_00070228;\n  }\n  uVar2 = bfd_get_mach(param_1);\n  iVar3 = *(int *)(param_1[1] + 8);\n  uVar7 = bfd_get_arch(param_1);\n  local_bc = disassembler(uVar7,iVar3 == 0,uVar2,param_1);\n  if (local_bc == 0) {\n    uVar2 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar2,0);\n    uVar7 = dcgettext(0,"can\'t disassemble for architecture %s\n",5);\n    FUN_000451b0(uVar7,uVar2);\n    DAT_00071110 = 1;\n  }\n  else {\n    local_a8 = *(undefined4 *)(param_1[1] + 4);\n    local_a4 = bfd_get_arch(param_1);\n    local_a0 = bfd_get_mach(param_1);\n    local_24 = DAT_00071070;\n    local_44 = bfd_octets_per_byte(param_1);\n    local_40 = 8;\n    local_3c = 3;\n    local_38 = 0;\n    if (*(int *)(param_1[1] + 8) == 0) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (*(int *)(param_1[1] + 8) == 1) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }\n    disassemble_init_for_target(local_b4);\n    iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n    if (iVar3 < 0) {\n      if (DAT_000710f0 != 0) {\nLAB_00017bfe:\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(*param_1);\n      }\n    }\n    else if (iVar3 != 0) {\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }\n    local_84 = DAT_00071064;\n    local_7c = DAT_00071060;\n    bfd_map_over_sections(param_1,FUN_00018770,local_b4);\n    if (local_c4 != (void *)0x0) {\n      free(local_c4);\n    }\n    free(DAT_00071064);\n  }\njoined_r0x0001721a:\n  if (DAT_000710ac != 0) {\n    iVar3 = FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1);\n    if (iVar3 == 0) {\n      if (DAT_000710d0 == 0) {\n        FUN_00034950();\n        FUN_00015f30();\n      }\n    }\n    else {\n      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);\n      if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }\n    }\n  }\n  if (DAT_0007106c != (void *)0x0) {\n    free(DAT_0007106c);\n    DAT_0007106c = (void *)0x0;\n  }\n  if (DAT_0007105c != (void *)0x0) {\n    free(DAT_0007105c);\n    DAT_0007105c = (void *)0x0;\n  }\n  if (DAT_00071058 != (void *)0x0) {\n    free(DAT_00071058);\n    DAT_00071058 = (void *)0x0;\n  }\n  DAT_00071068 = 0;\n  DAT_00071050 = 0;\n  DAT_00071054 = 0;\n  return;\n}" primitive_type (ERROR "__regparm3" identifier) (function_declarator "FUN_00016fd0(undefined4 *param_1)" identifier (parameter_list "(undefined4 *param_1)" ( (parameter_declaration "undefined4 *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) ))) (compound_statement "{\n  int *piVar1;\n  undefined4 uVar2;\n  int iVar3;\n  int *__dest;\n  undefined *puVar4;\n  undefined4 *puVar5;\n  char *pcVar6;\n  undefined4 uVar7;\n  int iVar8;\n  uint uVar9;\n  void *pvVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  undefined4 *puVar13;\n  byte *pbVar14;\n  undefined4 *puVar15;\n  bool bVar16;\n  bool bVar17;\n  bool bVar18;\n  byte bVar19;\n  int *local_f0;\n  int *local_ec;\n  int local_e8;\n  undefined4 *local_d0 [2];\n  undefined4 local_c8;\n  void *local_c4;\n  size_t local_c0;\n  int local_bc;\n  undefined4 local_b8;\n  uint local_b4 [2];\n  undefined4 **local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  undefined4 local_a0;\n  undefined4 local_9c;\n  int *local_84;\n  size_t local_7c;\n  code *local_68;\n  code *local_64;\n  undefined4 local_48;\n  undefined4 local_44;\n  undefined4 local_40;\n  undefined4 local_3c;\n  undefined4 local_38;\n  undefined4 local_24;\n  undefined4 uStack_14;\n  \n  bVar19 = 0;\n  uStack_14 = 0x16fdb;\n  if (DAT_0007109c == 0) {\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\nLAB_00017807:\n      uVar2 = *param_1;\n      uVar7 = *(undefined4 *)param_1[1];\n      pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(pcVar6,uVar2,uVar7);\n    }\n  }\n  else {\n    local_b4[0] = (uint)param_1[10] >> 5 & 1;\n    bfd_map_over_sections(param_1,FUN_000160d0,local_b4);\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) goto LAB_00017807;\n  }\n  if (DAT_000710ec != 0) {\n    FUN_000457f0(*(undefined4 *)PTR_stdout_0006ffdc,param_1,1,0);\n  }\n  if (DAT_00071100 != 0) {\n    uVar2 = bfd_get_mach(param_1);\n    uVar7 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar7,uVar2);\n    pcVar6 = (char *)dcgettext(0,"architecture: %s, ",5);\n    printf(pcVar6,uVar2);\n    uVar9 = param_1[10];\n    pcVar6 = (char *)dcgettext(0,"flags 0x%08x:\n",5);\n    printf(pcVar6,uVar9 >> 5 & 0x3ff);\n    pcVar6 = "";\n    uVar9 = (uint)param_1[10] >> 5;\n    if ((uVar9 & 1) != 0) {\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 2) != 0) {\n      printf("%s%s",pcVar6,"EXEC_P");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 4) != 0) {\n      printf("%s%s",pcVar6,"HAS_LINENO");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 8) != 0) {\n      printf("%s%s",pcVar6,"HAS_DEBUG");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x10) != 0) {\n      printf("%s%s",pcVar6,"HAS_SYMS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x20) != 0) {\n      printf("%s%s",pcVar6,"HAS_LOCALS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x40) != 0) {\n      printf("%s%s",pcVar6,"DYNAMIC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x80) != 0) {\n      printf("%s%s",pcVar6,"WP_TEXT");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x100) != 0) {\n      printf("%s%s",pcVar6,"D_PAGED");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x200) != 0) {\n      printf("%s%s",pcVar6,"BFD_IS_RELAXABLE");\n    }\n    pcVar6 = (char *)dcgettext(0,"\nstart address 0x",5);\n    printf(pcVar6);\n    bfd_fprintf_vma(param_1,*(undefined4 *)PTR_stdout_0006ffdc,param_1[0x1c]);\n    putchar(10);\n  }\n  if (DAT_000710e8 != 0) {\n    (**(code **)(param_1[1] + 0xc4))(param_1,*(undefined4 *)PTR_stdout_0006ffdc);\n  }\n  if (DAT_000710e4 != 0) {\n    uVar2 = dcgettext(0,"option -P/--private not supported by this file",5);\n    FUN_000451b0(uVar2);\n  }\n  if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\n    putc(10,*(FILE **)PTR_stdout_0006ffdc);\n  }\n  pvVar10 = DAT_0007106c;\n  if ((((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0) || DAT_000710ac != 0) ||\n      DAT_000710d0 != 0) {\n    if ((*(byte *)((int)param_1 + 0x29) & 2) == 0) {\n      DAT_00071068 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);\n      if (iVar3 < 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(uVar2);\n      }\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);\n      if (DAT_00071068 < 0) goto LAB_00017bfe;\n    }\n  }\n  DAT_0007106c = pvVar10;\n  if (DAT_00071104 != 0) {\n    local_b4[0] = 0xd;\n    pcVar6 = (char *)dcgettext(0,"Sections:\n",5);\n    printf(pcVar6);\n    if (DAT_000710b4 != 0) {\n      bfd_map_over_sections(param_1,FUN_00016d60,local_b4);\n    }\n    uVar9 = local_b4[0];\n    pcVar6 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);\n    printf(pcVar6,uVar9,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);\n    if (DAT_000710b4 != 0) {\n      pcVar6 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar6);\n    }\n    putchar(10);\n    bfd_map_over_sections(param_1,FUN_00016160,local_b4);\n  }\n  if (DAT_000710f8 == 0 && DAT_000710f0 == 0) {\n    if (DAT_000710c4 != 0) {\n      iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n      pvVar10 = DAT_0007105c;\n      if (0 < iVar3) goto LAB_000170fd;\n      goto LAB_00017145;\n    }\n  }\n  else {\nLAB_000170fd:\n    iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n    if (iVar3 < 0) {\n      uVar2 = *param_1;\n      if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(uVar2);\n      }\n      uVar7 = dcgettext(0,"%s: not a dynamic object",5);\n      FUN_000451b0(uVar7,uVar2);\n      DAT_00071110 = 1;\n      DAT_00071050 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);\n      if (DAT_00071050 < 0) goto LAB_00017bfe;\n    }\nLAB_00017145:\n    DAT_0007105c = pvVar10;\n    if ((DAT_000710c4 != 0) &&\n       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0)) {\n      DAT_00071054 = 0;\n    }\n  }\n  if (DAT_000710fc != 0) {\n    FUN_00016db0();\n  }\n  if (DAT_000710f8 != 0) {\n    FUN_00016db0();\n  }\n  if (DAT_000710d0 != 0) {\n    FUN_00015f30();\n  }\n  if (DAT_000710cc != 0) {\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n  }\n  if (DAT_000710f4 == 0) {\nLAB_00017355:\n    if (DAT_000710f0 != 0) {\n      if (DAT_000710c4 != 0) goto LAB_00017371;\n      iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n      if (iVar3 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (iVar3 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }\n    }\nLAB_000171f0:\n    if (DAT_00071108 != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(param_1,FUN_00016840,0);\n    }\n    if (DAT_000710c4 == 0) goto joined_r0x0001721a;\n  }\n  else {\n    if (DAT_000710c4 == 0) {\n      bfd_map_over_sections(param_1,FUN_00018570,0);\n      goto LAB_00017355;\n    }\n    if (DAT_000710f0 == 0) goto LAB_000171f0;\nLAB_00017371:\n    if (DAT_00071108 != 0) goto LAB_00017ac0;\n  }\n  DAT_0007102c = 0;\n  DAT_00071038 = 0;\n  DAT_00071034 = 0xffffffff;\n  DAT_00071060 = DAT_00071068;\n  if (DAT_00071068 == 0) {\n    DAT_00071060 = DAT_00071050;\n  }\n  DAT_00071030 = 0;\n  __dest = (int *)xmalloc((DAT_00071060 + DAT_00071054) * 4);\n  local_e8 = DAT_00071060;\n  pvVar10 = DAT_0007106c;\n  if (DAT_00071068 == 0) {\n    pvVar10 = DAT_0007105c;\n  }\n  DAT_00071064 = __dest;\n  memcpy(__dest,pvVar10,DAT_00071060 << 2);\n  puVar4 = PTR__bfd_std_section_0006ffd8 + 0xa8;\n  local_f0 = __dest;\n  local_ec = __dest;\nLAB_00017428:\n  local_e8 = local_e8 + -1;\n  if (-1 < local_e8) {\n    while( true ) {\n      piVar1 = local_f0 + 1;\n      iVar3 = *local_f0;\n      pbVar12 = *(byte **)(iVar3 + 4);\n      local_f0 = piVar1;\n      if ((pbVar12 == (byte *)0x0) || (*pbVar12 == 0)) break;\n      bVar16 = false;\n      bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0;\n      if (!bVar18) {\n        iVar8 = 4;\n        pbVar11 = pbVar12;\n        pbVar14 = &DAT_0004c8bd;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);\n        bVar17 = false;\n        bVar16 = (!bVar16 && !bVar18) == bVar16;\n        if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }\n      }\n      if ((*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)) break;\n      *local_ec = iVar3;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }\n    goto LAB_00017428;\n  }\nLAB_000174ab:\n  DAT_00071060 = (int)local_ec - (int)__dest >> 2;\n  if (0 < DAT_00071054) {\n    DAT_00071060 = DAT_00071060 + DAT_00071054;\n    pvVar10 = DAT_00071058;\n    do {\n      *local_ec = (int)pvVar10;\n      local_ec = local_ec + 1;\n      pvVar10 = (void *)((int)pvVar10 + 0x18);\n    } while (__dest + DAT_00071060 != local_ec);\n  }\n  qsort(__dest,DAT_00071060,4,FUN_00015990);\n  init_disassemble_info(local_b4,*(undefined4 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0);\n  local_ac = local_d0;\n  local_68 = FUN_000153c0;\n  local_64 = FUN_00014c20;\n  local_c8 = 0;\n  local_c4 = (void *)0x0;\n  local_c0 = 0;\n  local_b8 = 0;\n  local_d0[0] = param_1;\n  if (DAT_00071074 != 0) {\n    iVar8 = bfd_scan_arch(DAT_00071074);\n    iVar3 = DAT_00071074;\n    if (iVar8 == 0) {\n      uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    /* WARNING: Subroutine does not return */\n      FUN_00045180(uVar2,iVar3);\n    }\n    param_1[0x20] = iVar8;\n  }\n  if (DAT_00070228 != 2) {\n    puVar5 = (undefined4 *)xmalloc(0x1c4);\n    puVar13 = (undefined4 *)param_1[1];\n    iVar3 = (int)puVar5 - (int)((uint)(puVar5 + 1) & 0xfffffffc);\n    *puVar5 = *puVar13;\n    puVar5[0x70] = puVar13[0x70];\n    puVar13 = (undefined4 *)((int)puVar13 - iVar3);\n    puVar15 = (undefined4 *)((uint)(puVar5 + 1) & 0xfffffffc);\n    for (uVar9 = iVar3 + 0x1c4U >> 2; uVar9 != 0; uVar9 = uVar9 - 1) {\n      *puVar15 = *puVar13;\n      puVar13 = puVar13 + (uint)bVar19 * -2 + 1;\n      puVar15 = puVar15 + (uint)bVar19 * -2 + 1;\n    }\n    param_1[1] = puVar5;\n    puVar5[2] = DAT_00070228;\n  }\n  uVar2 = bfd_get_mach(param_1);\n  iVar3 = *(int *)(param_1[1] + 8);\n  uVar7 = bfd_get_arch(param_1);\n  local_bc = disassembler(uVar7,iVar3 == 0,uVar2,param_1);\n  if (local_bc == 0) {\n    uVar2 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar2,0);\n    uVar7 = dcgettext(0,"can\'t disassemble for architecture %s\n",5);\n    FUN_000451b0(uVar7,uVar2);\n    DAT_00071110 = 1;\n  }\n  else {\n    local_a8 = *(undefined4 *)(param_1[1] + 4);\n    local_a4 = bfd_get_arch(param_1);\n    local_a0 = bfd_get_mach(param_1);\n    local_24 = DAT_00071070;\n    local_44 = bfd_octets_per_byte(param_1);\n    local_40 = 8;\n    local_3c = 3;\n    local_38 = 0;\n    if (*(int *)(param_1[1] + 8) == 0) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (*(int *)(param_1[1] + 8) == 1) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }\n    disassemble_init_for_target(local_b4);\n    iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n    if (iVar3 < 0) {\n      if (DAT_000710f0 != 0) {\nLAB_00017bfe:\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(*param_1);\n      }\n    }\n    else if (iVar3 != 0) {\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }\n    local_84 = DAT_00071064;\n    local_7c = DAT_00071060;\n    bfd_map_over_sections(param_1,FUN_00018770,local_b4);\n    if (local_c4 != (void *)0x0) {\n      free(local_c4);\n    }\n    free(DAT_00071064);\n  }\njoined_r0x0001721a:\n  if (DAT_000710ac != 0) {\n    iVar3 = FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1);\n    if (iVar3 == 0) {\n      if (DAT_000710d0 == 0) {\n        FUN_00034950();\n        FUN_00015f30();\n      }\n    }\n    else {\n      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);\n      if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }\n    }\n  }\n  if (DAT_0007106c != (void *)0x0) {\n    free(DAT_0007106c);\n    DAT_0007106c = (void *)0x0;\n  }\n  if (DAT_0007105c != (void *)0x0) {\n    free(DAT_0007105c);\n    DAT_0007105c = (void *)0x0;\n  }\n  if (DAT_00071058 != (void *)0x0) {\n    free(DAT_00071058);\n    DAT_00071058 = (void *)0x0;\n  }\n  DAT_00071068 = 0;\n  DAT_00071050 = 0;\n  DAT_00071054 = 0;\n  return;\n}" { (declaration "int *piVar1;" primitive_type (pointer_declarator "*piVar1" * identifier) ;) (declaration "undefined4 uVar2;" type_identifier identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "int *__dest;" primitive_type (pointer_declarator "*__dest" * identifier) ;) (declaration "undefined *puVar4;" type_identifier (pointer_declarator "*puVar4" * identifier) ;) (declaration "undefined4 *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "char *pcVar6;" primitive_type (pointer_declarator "*pcVar6" * identifier) ;) (declaration "undefined4 uVar7;" type_identifier identifier ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "uint uVar9;" type_identifier identifier ;) (declaration "void *pvVar10;" primitive_type (pointer_declarator "*pvVar10" * identifier) ;) (declaration "byte *pbVar11;" type_identifier (pointer_declarator "*pbVar11" * identifier) ;) (declaration "byte *pbVar12;" type_identifier (pointer_declarator "*pbVar12" * identifier) ;) (declaration "undefined4 *puVar13;" type_identifier (pointer_declarator "*puVar13" * identifier) ;) (declaration "byte *pbVar14;" type_identifier (pointer_declarator "*pbVar14" * identifier) ;) (declaration "undefined4 *puVar15;" type_identifier (pointer_declarator "*puVar15" * identifier) ;) (declaration "bool bVar16;" primitive_type identifier ;) (declaration "bool bVar17;" primitive_type identifier ;) (declaration "bool bVar18;" primitive_type identifier ;) (declaration "byte bVar19;" type_identifier identifier ;) (declaration "int *local_f0;" primitive_type (pointer_declarator "*local_f0" * identifier) ;) (declaration "int *local_ec;" primitive_type (pointer_declarator "*local_ec" * identifier) ;) (declaration "int local_e8;" primitive_type identifier ;) (declaration "undefined4 *local_d0 [2];" type_identifier (pointer_declarator "*local_d0 [2]" * (array_declarator "local_d0 [2]" identifier [ number_literal ])) ;) (declaration "undefined4 local_c8;" type_identifier identifier ;) (declaration "void *local_c4;" primitive_type (pointer_declarator "*local_c4" * identifier) ;) (declaration "size_t local_c0;" primitive_type identifier ;) (declaration "int local_bc;" primitive_type identifier ;) (declaration "undefined4 local_b8;" type_identifier identifier ;) (declaration "uint local_b4 [2];" type_identifier (array_declarator "local_b4 [2]" identifier [ number_literal ]) ;) (declaration "undefined4 **local_ac;" type_identifier (pointer_declarator "**local_ac" * (pointer_declarator "*local_ac" * identifier)) ;) (declaration "undefined4 local_a8;" type_identifier identifier ;) (declaration "undefined4 local_a4;" type_identifier identifier ;) (declaration "undefined4 local_a0;" type_identifier identifier ;) (declaration "undefined4 local_9c;" type_identifier identifier ;) (declaration "int *local_84;" primitive_type (pointer_declarator "*local_84" * identifier) ;) (declaration "size_t local_7c;" primitive_type identifier ;) (declaration "code *local_68;" type_identifier (pointer_declarator "*local_68" * identifier) ;) (declaration "code *local_64;" type_identifier (pointer_declarator "*local_64" * identifier) ;) (declaration "undefined4 local_48;" type_identifier identifier ;) (declaration "undefined4 local_44;" type_identifier identifier ;) (declaration "undefined4 local_40;" type_identifier identifier ;) (declaration "undefined4 local_3c;" type_identifier identifier ;) (declaration "undefined4 local_38;" type_identifier identifier ;) (declaration "undefined4 local_24;" type_identifier identifier ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "bVar19 = 0;" (assignment_expression "bVar19 = 0" identifier = number_literal) ;) (expression_statement "uStack_14 = 0x16fdb;" (assignment_expression "uStack_14 = 0x16fdb" identifier = number_literal) ;) (if_statement "if (DAT_0007109c == 0) {\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\nLAB_00017807:\n      uVar2 = *param_1;\n      uVar7 = *(undefined4 *)param_1[1];\n      pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(pcVar6,uVar2,uVar7);\n    }\n  }\n  else {\n    local_b4[0] = (uint)param_1[10] >> 5 & 1;\n    bfd_map_over_sections(param_1,FUN_000160d0,local_b4);\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) goto LAB_00017807;\n  }" if (parenthesized_expression "(DAT_0007109c == 0)" ( (binary_expression "DAT_0007109c == 0" identifier == number_literal) )) (compound_statement "{\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\nLAB_00017807:\n      uVar2 = *param_1;\n      uVar7 = *(undefined4 *)param_1[1];\n      pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(pcVar6,uVar2,uVar7);\n    }\n  }" { (if_statement "if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\nLAB_00017807:\n      uVar2 = *param_1;\n      uVar7 = *(undefined4 *)param_1[1];\n      pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(pcVar6,uVar2,uVar7);\n    }" if (parenthesized_expression "(DAT_000710a8 == 0 && DAT_000710a4 == 0)" ( (binary_expression "DAT_000710a8 == 0 && DAT_000710a4 == 0" (binary_expression "DAT_000710a8 == 0" identifier == number_literal) && (binary_expression "DAT_000710a4 == 0" identifier == number_literal)) )) (compound_statement "{\nLAB_00017807:\n      uVar2 = *param_1;\n      uVar7 = *(undefined4 *)param_1[1];\n      pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(pcVar6,uVar2,uVar7);\n    }" { (labeled_statement "LAB_00017807:\n      uVar2 = *param_1;" statement_identifier : (expression_statement "uVar2 = *param_1;" (assignment_expression "uVar2 = *param_1" identifier = (pointer_expression "*param_1" * identifier)) ;)) (expression_statement "uVar7 = *(undefined4 *)param_1[1];" (assignment_expression "uVar7 = *(undefined4 *)param_1[1]" identifier = (pointer_expression "*(undefined4 *)param_1[1]" * (cast_expression "(undefined4 *)param_1[1]" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[1]" identifier [ number_literal ])))) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\n%s:     file format %s\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\n%s:     file format %s\n",5)" identifier (argument_list "(0,"\n%s:     file format %s\n",5)" ( number_literal , (string_literal ""\n%s:     file format %s\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar2,uVar7);" (call_expression "printf(pcVar6,uVar2,uVar7)" identifier (argument_list "(pcVar6,uVar2,uVar7)" ( identifier , identifier , identifier ))) ;) })) }) (else_clause "else {\n    local_b4[0] = (uint)param_1[10] >> 5 & 1;\n    bfd_map_over_sections(param_1,FUN_000160d0,local_b4);\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) goto LAB_00017807;\n  }" else (compound_statement "{\n    local_b4[0] = (uint)param_1[10] >> 5 & 1;\n    bfd_map_over_sections(param_1,FUN_000160d0,local_b4);\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) goto LAB_00017807;\n  }" { (expression_statement "local_b4[0] = (uint)param_1[10] >> 5 & 1;" (assignment_expression "local_b4[0] = (uint)param_1[10] >> 5 & 1" (subscript_expression "local_b4[0]" identifier [ number_literal ]) = (binary_expression "(uint)param_1[10] >> 5 & 1" (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[10]" identifier [ number_literal ])) >> number_literal) & number_literal)) ;) (expression_statement "bfd_map_over_sections(param_1,FUN_000160d0,local_b4);" (call_expression "bfd_map_over_sections(param_1,FUN_000160d0,local_b4)" identifier (argument_list "(param_1,FUN_000160d0,local_b4)" ( identifier , identifier , identifier ))) ;) (if_statement "if (DAT_000710a8 == 0 && DAT_000710a4 == 0) goto LAB_00017807;" if (parenthesized_expression "(DAT_000710a8 == 0 && DAT_000710a4 == 0)" ( (binary_expression "DAT_000710a8 == 0 && DAT_000710a4 == 0" (binary_expression "DAT_000710a8 == 0" identifier == number_literal) && (binary_expression "DAT_000710a4 == 0" identifier == number_literal)) )) (goto_statement "goto LAB_00017807;" goto statement_identifier ;)) }))) (if_statement "if (DAT_000710ec != 0) {\n    FUN_000457f0(*(undefined4 *)PTR_stdout_0006ffdc,param_1,1,0);\n  }" if (parenthesized_expression "(DAT_000710ec != 0)" ( (binary_expression "DAT_000710ec != 0" identifier != number_literal) )) (compound_statement "{\n    FUN_000457f0(*(undefined4 *)PTR_stdout_0006ffdc,param_1,1,0);\n  }" { (expression_statement "FUN_000457f0(*(undefined4 *)PTR_stdout_0006ffdc,param_1,1,0);" (call_expression "FUN_000457f0(*(undefined4 *)PTR_stdout_0006ffdc,param_1,1,0)" identifier (argument_list "(*(undefined4 *)PTR_stdout_0006ffdc,param_1,1,0)" ( (pointer_expression "*(undefined4 *)PTR_stdout_0006ffdc" * (cast_expression "(undefined4 *)PTR_stdout_0006ffdc" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , identifier , number_literal , number_literal ))) ;) })) (if_statement "if (DAT_00071100 != 0) {\n    uVar2 = bfd_get_mach(param_1);\n    uVar7 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar7,uVar2);\n    pcVar6 = (char *)dcgettext(0,"architecture: %s, ",5);\n    printf(pcVar6,uVar2);\n    uVar9 = param_1[10];\n    pcVar6 = (char *)dcgettext(0,"flags 0x%08x:\n",5);\n    printf(pcVar6,uVar9 >> 5 & 0x3ff);\n    pcVar6 = "";\n    uVar9 = (uint)param_1[10] >> 5;\n    if ((uVar9 & 1) != 0) {\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 2) != 0) {\n      printf("%s%s",pcVar6,"EXEC_P");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 4) != 0) {\n      printf("%s%s",pcVar6,"HAS_LINENO");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 8) != 0) {\n      printf("%s%s",pcVar6,"HAS_DEBUG");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x10) != 0) {\n      printf("%s%s",pcVar6,"HAS_SYMS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x20) != 0) {\n      printf("%s%s",pcVar6,"HAS_LOCALS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x40) != 0) {\n      printf("%s%s",pcVar6,"DYNAMIC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x80) != 0) {\n      printf("%s%s",pcVar6,"WP_TEXT");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x100) != 0) {\n      printf("%s%s",pcVar6,"D_PAGED");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x200) != 0) {\n      printf("%s%s",pcVar6,"BFD_IS_RELAXABLE");\n    }\n    pcVar6 = (char *)dcgettext(0,"\nstart address 0x",5);\n    printf(pcVar6);\n    bfd_fprintf_vma(param_1,*(undefined4 *)PTR_stdout_0006ffdc,param_1[0x1c]);\n    putchar(10);\n  }" if (parenthesized_expression "(DAT_00071100 != 0)" ( (binary_expression "DAT_00071100 != 0" identifier != number_literal) )) (compound_statement "{\n    uVar2 = bfd_get_mach(param_1);\n    uVar7 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar7,uVar2);\n    pcVar6 = (char *)dcgettext(0,"architecture: %s, ",5);\n    printf(pcVar6,uVar2);\n    uVar9 = param_1[10];\n    pcVar6 = (char *)dcgettext(0,"flags 0x%08x:\n",5);\n    printf(pcVar6,uVar9 >> 5 & 0x3ff);\n    pcVar6 = "";\n    uVar9 = (uint)param_1[10] >> 5;\n    if ((uVar9 & 1) != 0) {\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 2) != 0) {\n      printf("%s%s",pcVar6,"EXEC_P");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 4) != 0) {\n      printf("%s%s",pcVar6,"HAS_LINENO");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 8) != 0) {\n      printf("%s%s",pcVar6,"HAS_DEBUG");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x10) != 0) {\n      printf("%s%s",pcVar6,"HAS_SYMS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x20) != 0) {\n      printf("%s%s",pcVar6,"HAS_LOCALS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x40) != 0) {\n      printf("%s%s",pcVar6,"DYNAMIC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x80) != 0) {\n      printf("%s%s",pcVar6,"WP_TEXT");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x100) != 0) {\n      printf("%s%s",pcVar6,"D_PAGED");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x200) != 0) {\n      printf("%s%s",pcVar6,"BFD_IS_RELAXABLE");\n    }\n    pcVar6 = (char *)dcgettext(0,"\nstart address 0x",5);\n    printf(pcVar6);\n    bfd_fprintf_vma(param_1,*(undefined4 *)PTR_stdout_0006ffdc,param_1[0x1c]);\n    putchar(10);\n  }" { (expression_statement "uVar2 = bfd_get_mach(param_1);" (assignment_expression "uVar2 = bfd_get_mach(param_1)" identifier = (call_expression "bfd_get_mach(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (expression_statement "uVar7 = bfd_get_arch(param_1);" (assignment_expression "uVar7 = bfd_get_arch(param_1)" identifier = (call_expression "bfd_get_arch(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (expression_statement "uVar2 = bfd_printable_arch_mach(uVar7,uVar2);" (assignment_expression "uVar2 = bfd_printable_arch_mach(uVar7,uVar2)" identifier = (call_expression "bfd_printable_arch_mach(uVar7,uVar2)" identifier (argument_list "(uVar7,uVar2)" ( identifier , identifier )))) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"architecture: %s, ",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"architecture: %s, ",5)" identifier = (cast_expression "(char *)dcgettext(0,"architecture: %s, ",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"architecture: %s, ",5)" identifier (argument_list "(0,"architecture: %s, ",5)" ( number_literal , (string_literal ""architecture: %s, "" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar2);" (call_expression "printf(pcVar6,uVar2)" identifier (argument_list "(pcVar6,uVar2)" ( identifier , identifier ))) ;) (expression_statement "uVar9 = param_1[10];" (assignment_expression "uVar9 = param_1[10]" identifier = (subscript_expression "param_1[10]" identifier [ number_literal ])) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"flags 0x%08x:\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"flags 0x%08x:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"flags 0x%08x:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"flags 0x%08x:\n",5)" identifier (argument_list "(0,"flags 0x%08x:\n",5)" ( number_literal , (string_literal ""flags 0x%08x:\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar9 >> 5 & 0x3ff);" (call_expression "printf(pcVar6,uVar9 >> 5 & 0x3ff)" identifier (argument_list "(pcVar6,uVar9 >> 5 & 0x3ff)" ( identifier , (binary_expression "uVar9 >> 5 & 0x3ff" (binary_expression "uVar9 >> 5" identifier >> number_literal) & number_literal) ))) ;) (expression_statement "pcVar6 = "";" (assignment_expression "pcVar6 = """ identifier = (string_literal """" " ")) ;) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" identifier = (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[10]" identifier [ number_literal ])) >> number_literal)) ;) (if_statement "if ((uVar9 & 1) != 0) {\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" if (parenthesized_expression "((uVar9 & 1) != 0)" ( (binary_expression "(uVar9 & 1) != 0" (parenthesized_expression "(uVar9 & 1)" ( (binary_expression "uVar9 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" { (expression_statement "printf("%s%s",&DAT_0004ca07,"HAS_RELOC");" (call_expression "printf("%s%s",&DAT_0004ca07,"HAS_RELOC")" identifier (argument_list "("%s%s",&DAT_0004ca07,"HAS_RELOC")" ( (string_literal ""%s%s"" " string_content ") , (pointer_expression "&DAT_0004ca07" & identifier) , (string_literal ""HAS_RELOC"" " string_content ") ))) ;) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" identifier = (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[10]" identifier [ number_literal ])) >> number_literal)) ;) })) (if_statement "if ((uVar9 & 2) != 0) {\n      printf("%s%s",pcVar6,"EXEC_P");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" if (parenthesized_expression "((uVar9 & 2) != 0)" ( (binary_expression "(uVar9 & 2) != 0" (parenthesized_expression "(uVar9 & 2)" ( (binary_expression "uVar9 & 2" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar6,"EXEC_P");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" { (expression_statement "printf("%s%s",pcVar6,"EXEC_P");" (call_expression "printf("%s%s",pcVar6,"EXEC_P")" identifier (argument_list "("%s%s",pcVar6,"EXEC_P")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""EXEC_P"" " string_content ") ))) ;) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" identifier = (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[10]" identifier [ number_literal ])) >> number_literal)) ;) })) (if_statement "if ((uVar9 & 4) != 0) {\n      printf("%s%s",pcVar6,"HAS_LINENO");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" if (parenthesized_expression "((uVar9 & 4) != 0)" ( (binary_expression "(uVar9 & 4) != 0" (parenthesized_expression "(uVar9 & 4)" ( (binary_expression "uVar9 & 4" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar6,"HAS_LINENO");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" { (expression_statement "printf("%s%s",pcVar6,"HAS_LINENO");" (call_expression "printf("%s%s",pcVar6,"HAS_LINENO")" identifier (argument_list "("%s%s",pcVar6,"HAS_LINENO")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""HAS_LINENO"" " string_content ") ))) ;) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" identifier = (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[10]" identifier [ number_literal ])) >> number_literal)) ;) })) (if_statement "if ((uVar9 & 8) != 0) {\n      printf("%s%s",pcVar6,"HAS_DEBUG");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" if (parenthesized_expression "((uVar9 & 8) != 0)" ( (binary_expression "(uVar9 & 8) != 0" (parenthesized_expression "(uVar9 & 8)" ( (binary_expression "uVar9 & 8" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar6,"HAS_DEBUG");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" { (expression_statement "printf("%s%s",pcVar6,"HAS_DEBUG");" (call_expression "printf("%s%s",pcVar6,"HAS_DEBUG")" identifier (argument_list "("%s%s",pcVar6,"HAS_DEBUG")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""HAS_DEBUG"" " string_content ") ))) ;) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" identifier = (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[10]" identifier [ number_literal ])) >> number_literal)) ;) })) (if_statement "if ((uVar9 & 0x10) != 0) {\n      printf("%s%s",pcVar6,"HAS_SYMS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" if (parenthesized_expression "((uVar9 & 0x10) != 0)" ( (binary_expression "(uVar9 & 0x10) != 0" (parenthesized_expression "(uVar9 & 0x10)" ( (binary_expression "uVar9 & 0x10" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar6,"HAS_SYMS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" { (expression_statement "printf("%s%s",pcVar6,"HAS_SYMS");" (call_expression "printf("%s%s",pcVar6,"HAS_SYMS")" identifier (argument_list "("%s%s",pcVar6,"HAS_SYMS")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""HAS_SYMS"" " string_content ") ))) ;) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" identifier = (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[10]" identifier [ number_literal ])) >> number_literal)) ;) })) (if_statement "if ((uVar9 & 0x20) != 0) {\n      printf("%s%s",pcVar6,"HAS_LOCALS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" if (parenthesized_expression "((uVar9 & 0x20) != 0)" ( (binary_expression "(uVar9 & 0x20) != 0" (parenthesized_expression "(uVar9 & 0x20)" ( (binary_expression "uVar9 & 0x20" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar6,"HAS_LOCALS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" { (expression_statement "printf("%s%s",pcVar6,"HAS_LOCALS");" (call_expression "printf("%s%s",pcVar6,"HAS_LOCALS")" identifier (argument_list "("%s%s",pcVar6,"HAS_LOCALS")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""HAS_LOCALS"" " string_content ") ))) ;) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" identifier = (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[10]" identifier [ number_literal ])) >> number_literal)) ;) })) (if_statement "if ((uVar9 & 0x40) != 0) {\n      printf("%s%s",pcVar6,"DYNAMIC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" if (parenthesized_expression "((uVar9 & 0x40) != 0)" ( (binary_expression "(uVar9 & 0x40) != 0" (parenthesized_expression "(uVar9 & 0x40)" ( (binary_expression "uVar9 & 0x40" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar6,"DYNAMIC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" { (expression_statement "printf("%s%s",pcVar6,"DYNAMIC");" (call_expression "printf("%s%s",pcVar6,"DYNAMIC")" identifier (argument_list "("%s%s",pcVar6,"DYNAMIC")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""DYNAMIC"" " string_content ") ))) ;) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" identifier = (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[10]" identifier [ number_literal ])) >> number_literal)) ;) })) (if_statement "if ((uVar9 & 0x80) != 0) {\n      printf("%s%s",pcVar6,"WP_TEXT");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" if (parenthesized_expression "((uVar9 & 0x80) != 0)" ( (binary_expression "(uVar9 & 0x80) != 0" (parenthesized_expression "(uVar9 & 0x80)" ( (binary_expression "uVar9 & 0x80" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar6,"WP_TEXT");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" { (expression_statement "printf("%s%s",pcVar6,"WP_TEXT");" (call_expression "printf("%s%s",pcVar6,"WP_TEXT")" identifier (argument_list "("%s%s",pcVar6,"WP_TEXT")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""WP_TEXT"" " string_content ") ))) ;) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" identifier = (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[10]" identifier [ number_literal ])) >> number_literal)) ;) })) (if_statement "if ((uVar9 & 0x100) != 0) {\n      printf("%s%s",pcVar6,"D_PAGED");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" if (parenthesized_expression "((uVar9 & 0x100) != 0)" ( (binary_expression "(uVar9 & 0x100) != 0" (parenthesized_expression "(uVar9 & 0x100)" ( (binary_expression "uVar9 & 0x100" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar6,"D_PAGED");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" { (expression_statement "printf("%s%s",pcVar6,"D_PAGED");" (call_expression "printf("%s%s",pcVar6,"D_PAGED")" identifier (argument_list "("%s%s",pcVar6,"D_PAGED")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""D_PAGED"" " string_content ") ))) ;) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" identifier = (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[10]" identifier [ number_literal ])) >> number_literal)) ;) })) (if_statement "if ((uVar9 & 0x200) != 0) {\n      printf("%s%s",pcVar6,"BFD_IS_RELAXABLE");\n    }" if (parenthesized_expression "((uVar9 & 0x200) != 0)" ( (binary_expression "(uVar9 & 0x200) != 0" (parenthesized_expression "(uVar9 & 0x200)" ( (binary_expression "uVar9 & 0x200" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar6,"BFD_IS_RELAXABLE");\n    }" { (expression_statement "printf("%s%s",pcVar6,"BFD_IS_RELAXABLE");" (call_expression "printf("%s%s",pcVar6,"BFD_IS_RELAXABLE")" identifier (argument_list "("%s%s",pcVar6,"BFD_IS_RELAXABLE")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""BFD_IS_RELAXABLE"" " string_content ") ))) ;) })) (expression_statement "pcVar6 = (char *)dcgettext(0,"\nstart address 0x",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"\nstart address 0x",5)" identifier = (cast_expression "(char *)dcgettext(0,"\nstart address 0x",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\nstart address 0x",5)" identifier (argument_list "(0,"\nstart address 0x",5)" ( number_literal , (string_literal ""\nstart address 0x"" " escape_sequence string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier ))) ;) (expression_statement "bfd_fprintf_vma(param_1,*(undefined4 *)PTR_stdout_0006ffdc,param_1[0x1c]);" (call_expression "bfd_fprintf_vma(param_1,*(undefined4 *)PTR_stdout_0006ffdc,param_1[0x1c])" identifier (argument_list "(param_1,*(undefined4 *)PTR_stdout_0006ffdc,param_1[0x1c])" ( identifier , (pointer_expression "*(undefined4 *)PTR_stdout_0006ffdc" * (cast_expression "(undefined4 *)PTR_stdout_0006ffdc" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (subscript_expression "param_1[0x1c]" identifier [ number_literal ]) ))) ;) (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;) })) (if_statement "if (DAT_000710e8 != 0) {\n    (**(code **)(param_1[1] + 0xc4))(param_1,*(undefined4 *)PTR_stdout_0006ffdc);\n  }" if (parenthesized_expression "(DAT_000710e8 != 0)" ( (binary_expression "DAT_000710e8 != 0" identifier != number_literal) )) (compound_statement "{\n    (**(code **)(param_1[1] + 0xc4))(param_1,*(undefined4 *)PTR_stdout_0006ffdc);\n  }" { (expression_statement "(**(code **)(param_1[1] + 0xc4))(param_1,*(undefined4 *)PTR_stdout_0006ffdc);" (call_expression "(**(code **)(param_1[1] + 0xc4))(param_1,*(undefined4 *)PTR_stdout_0006ffdc)" (parenthesized_expression "(**(code **)(param_1[1] + 0xc4))" ( (pointer_expression "**(code **)(param_1[1] + 0xc4)" * (pointer_expression "*(code **)(param_1[1] + 0xc4)" * (cast_expression "(code **)(param_1[1] + 0xc4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1[1] + 0xc4)" ( (binary_expression "param_1[1] + 0xc4" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) ))))) )) (argument_list "(param_1,*(undefined4 *)PTR_stdout_0006ffdc)" ( identifier , (pointer_expression "*(undefined4 *)PTR_stdout_0006ffdc" * (cast_expression "(undefined4 *)PTR_stdout_0006ffdc" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ))) ;) })) (if_statement "if (DAT_000710e4 != 0) {\n    uVar2 = dcgettext(0,"option -P/--private not supported by this file",5);\n    FUN_000451b0(uVar2);\n  }" if (parenthesized_expression "(DAT_000710e4 != 0)" ( (binary_expression "DAT_000710e4 != 0" identifier != number_literal) )) (compound_statement "{\n    uVar2 = dcgettext(0,"option -P/--private not supported by this file",5);\n    FUN_000451b0(uVar2);\n  }" { (expression_statement "uVar2 = dcgettext(0,"option -P/--private not supported by this file",5);" (assignment_expression "uVar2 = dcgettext(0,"option -P/--private not supported by this file",5)" identifier = (call_expression "dcgettext(0,"option -P/--private not supported by this file",5)" identifier (argument_list "(0,"option -P/--private not supported by this file",5)" ( number_literal , (string_literal ""option -P/--private not supported by this file"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_000451b0(uVar2);" (call_expression "FUN_000451b0(uVar2)" identifier (argument_list "(uVar2)" ( identifier ))) ;) })) (if_statement "if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\n    putc(10,*(FILE **)PTR_stdout_0006ffdc);\n  }" if (parenthesized_expression "(DAT_000710a8 == 0 && DAT_000710a4 == 0)" ( (binary_expression "DAT_000710a8 == 0 && DAT_000710a4 == 0" (binary_expression "DAT_000710a8 == 0" identifier == number_literal) && (binary_expression "DAT_000710a4 == 0" identifier == number_literal)) )) (compound_statement "{\n    putc(10,*(FILE **)PTR_stdout_0006ffdc);\n  }" { (expression_statement "putc(10,*(FILE **)PTR_stdout_0006ffdc);" (call_expression "putc(10,*(FILE **)PTR_stdout_0006ffdc)" identifier (argument_list "(10,*(FILE **)PTR_stdout_0006ffdc)" ( number_literal , (pointer_expression "*(FILE **)PTR_stdout_0006ffdc" * (cast_expression "(FILE **)PTR_stdout_0006ffdc" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) })) (expression_statement "pvVar10 = DAT_0007106c;" (assignment_expression "pvVar10 = DAT_0007106c" identifier = identifier) ;) (if_statement "if ((((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0) || DAT_000710ac != 0) ||\n      DAT_000710d0 != 0) {\n    if ((*(byte *)((int)param_1 + 0x29) & 2) == 0) {\n      DAT_00071068 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);\n      if (iVar3 < 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(uVar2);\n      }\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);\n      if (DAT_00071068 < 0) goto LAB_00017bfe;\n    }\n  }" if (parenthesized_expression "((((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0) || DAT_000710ac != 0) ||\n      DAT_000710d0 != 0)" ( (binary_expression "(((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0) || DAT_000710ac != 0) ||\n      DAT_000710d0 != 0" (parenthesized_expression "(((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0) || DAT_000710ac != 0)" ( (binary_expression "((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0) || DAT_000710ac != 0" (parenthesized_expression "((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0)" ( (binary_expression "(DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0" (parenthesized_expression "(DAT_000710fc != 0 || DAT_000710f4 != 0)" ( (binary_expression "DAT_000710fc != 0 || DAT_000710f4 != 0" (binary_expression "DAT_000710fc != 0" identifier != number_literal) || (binary_expression "DAT_000710f4 != 0" identifier != number_literal)) )) || (binary_expression "DAT_000710c4 != 0" identifier != number_literal)) )) || (binary_expression "DAT_000710ac != 0" identifier != number_literal)) )) || (binary_expression "DAT_000710d0 != 0" identifier != number_literal)) )) (compound_statement "{\n    if ((*(byte *)((int)param_1 + 0x29) & 2) == 0) {\n      DAT_00071068 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);\n      if (iVar3 < 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(uVar2);\n      }\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);\n      if (DAT_00071068 < 0) goto LAB_00017bfe;\n    }\n  }" { (if_statement "if ((*(byte *)((int)param_1 + 0x29) & 2) == 0) {\n      DAT_00071068 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);\n      if (iVar3 < 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(uVar2);\n      }\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);\n      if (DAT_00071068 < 0) goto LAB_00017bfe;\n    }" if (parenthesized_expression "((*(byte *)((int)param_1 + 0x29) & 2) == 0)" ( (binary_expression "(*(byte *)((int)param_1 + 0x29) & 2) == 0" (parenthesized_expression "(*(byte *)((int)param_1 + 0x29) & 2)" ( (binary_expression "*(byte *)((int)param_1 + 0x29) & 2" (pointer_expression "*(byte *)((int)param_1 + 0x29)" * (cast_expression "(byte *)((int)param_1 + 0x29)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)param_1 + 0x29)" ( (binary_expression "(int)param_1 + 0x29" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n      DAT_00071068 = 0;\n      pvVar10 = (void *)0x0;\n    }" { (expression_statement "DAT_00071068 = 0;" (assignment_expression "DAT_00071068 = 0" identifier = number_literal) ;) (expression_statement "pvVar10 = (void *)0x0;" (assignment_expression "pvVar10 = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n      iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);\n      if (iVar3 < 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(uVar2);\n      }\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);\n      if (DAT_00071068 < 0) goto LAB_00017bfe;\n    }" else (compound_statement "{\n      iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);\n      if (iVar3 < 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(uVar2);\n      }\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);\n      if (DAT_00071068 < 0) goto LAB_00017bfe;\n    }" { (expression_statement "iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);" (assignment_expression "iVar3 = (**(code **)(param_1[1] + 0x104))(param_1)" identifier = (call_expression "(**(code **)(param_1[1] + 0x104))(param_1)" (parenthesized_expression "(**(code **)(param_1[1] + 0x104))" ( (pointer_expression "**(code **)(param_1[1] + 0x104)" * (pointer_expression "*(code **)(param_1[1] + 0x104)" * (cast_expression "(code **)(param_1[1] + 0x104)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1[1] + 0x104)" ( (binary_expression "param_1[1] + 0x104" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) ))))) )) (argument_list "(param_1)" ( identifier )))) ;) (if_statement "if (iVar3 < 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(uVar2);\n      }" if (parenthesized_expression "(iVar3 < 0)" ( (binary_expression "iVar3 < 0" identifier < number_literal) )) (compound_statement "{\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(uVar2);\n      }" { (expression_statement "uVar2 = *param_1;" (assignment_expression "uVar2 = *param_1" identifier = (pointer_expression "*param_1" * identifier)) ;) (expression_statement "uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);" (assignment_expression "uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3)" identifier = (call_expression "dcgettext(0,"failed to read symbol table from: %s",5,iVar3)" identifier (argument_list "(0,"failed to read symbol table from: %s",5,iVar3)" ( number_literal , (string_literal ""failed to read symbol table from: %s"" " string_content ") , number_literal , identifier )))) ;) (expression_statement "FUN_000451b0(uVar7,uVar2);" (call_expression "FUN_000451b0(uVar7,uVar2)" identifier (argument_list "(uVar7,uVar2)" ( identifier , identifier ))) ;) (expression_statement "uVar2 = dcgettext(0,"error message was",5);" (assignment_expression "uVar2 = dcgettext(0,"error message was",5)" identifier = (call_expression "dcgettext(0,"error message was",5)" identifier (argument_list "(0,"error message was",5)" ( number_literal , (string_literal ""error message was"" " string_content ") , number_literal )))) ;) comment (expression_statement "FUN_000450f0(uVar2);" (call_expression "FUN_000450f0(uVar2)" identifier (argument_list "(uVar2)" ( identifier ))) ;) })) (expression_statement "pvVar10 = (void *)0x0;" (assignment_expression "pvVar10 = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n        pvVar10 = (void *)xmalloc(iVar3);\n      }" { (expression_statement "pvVar10 = (void *)xmalloc(iVar3);" (assignment_expression "pvVar10 = (void *)xmalloc(iVar3)" identifier = (cast_expression "(void *)xmalloc(iVar3)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(iVar3)" identifier (argument_list "(iVar3)" ( identifier ))))) ;) })) (expression_statement "DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);" (assignment_expression "DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10)" identifier = (call_expression "(**(code **)(param_1[1] + 0x108))(param_1,pvVar10)" (parenthesized_expression "(**(code **)(param_1[1] + 0x108))" ( (pointer_expression "**(code **)(param_1[1] + 0x108)" * (pointer_expression "*(code **)(param_1[1] + 0x108)" * (cast_expression "(code **)(param_1[1] + 0x108)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1[1] + 0x108)" ( (binary_expression "param_1[1] + 0x108" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) ))))) )) (argument_list "(param_1,pvVar10)" ( identifier , identifier )))) ;) (if_statement "if (DAT_00071068 < 0) goto LAB_00017bfe;" if (parenthesized_expression "(DAT_00071068 < 0)" ( (binary_expression "DAT_00071068 < 0" identifier < number_literal) )) (goto_statement "goto LAB_00017bfe;" goto statement_identifier ;)) }))) })) (expression_statement "DAT_0007106c = pvVar10;" (assignment_expression "DAT_0007106c = pvVar10" identifier = identifier) ;) (if_statement "if (DAT_00071104 != 0) {\n    local_b4[0] = 0xd;\n    pcVar6 = (char *)dcgettext(0,"Sections:\n",5);\n    printf(pcVar6);\n    if (DAT_000710b4 != 0) {\n      bfd_map_over_sections(param_1,FUN_00016d60,local_b4);\n    }\n    uVar9 = local_b4[0];\n    pcVar6 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);\n    printf(pcVar6,uVar9,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);\n    if (DAT_000710b4 != 0) {\n      pcVar6 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar6);\n    }\n    putchar(10);\n    bfd_map_over_sections(param_1,FUN_00016160,local_b4);\n  }" if (parenthesized_expression "(DAT_00071104 != 0)" ( (binary_expression "DAT_00071104 != 0" identifier != number_literal) )) (compound_statement "{\n    local_b4[0] = 0xd;\n    pcVar6 = (char *)dcgettext(0,"Sections:\n",5);\n    printf(pcVar6);\n    if (DAT_000710b4 != 0) {\n      bfd_map_over_sections(param_1,FUN_00016d60,local_b4);\n    }\n    uVar9 = local_b4[0];\n    pcVar6 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);\n    printf(pcVar6,uVar9,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);\n    if (DAT_000710b4 != 0) {\n      pcVar6 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar6);\n    }\n    putchar(10);\n    bfd_map_over_sections(param_1,FUN_00016160,local_b4);\n  }" { (expression_statement "local_b4[0] = 0xd;" (assignment_expression "local_b4[0] = 0xd" (subscript_expression "local_b4[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"Sections:\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"Sections:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Sections:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Sections:\n",5)" identifier (argument_list "(0,"Sections:\n",5)" ( number_literal , (string_literal ""Sections:\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier ))) ;) (if_statement "if (DAT_000710b4 != 0) {\n      bfd_map_over_sections(param_1,FUN_00016d60,local_b4);\n    }" if (parenthesized_expression "(DAT_000710b4 != 0)" ( (binary_expression "DAT_000710b4 != 0" identifier != number_literal) )) (compound_statement "{\n      bfd_map_over_sections(param_1,FUN_00016d60,local_b4);\n    }" { (expression_statement "bfd_map_over_sections(param_1,FUN_00016d60,local_b4);" (call_expression "bfd_map_over_sections(param_1,FUN_00016d60,local_b4)" identifier (argument_list "(param_1,FUN_00016d60,local_b4)" ( identifier , identifier , identifier ))) ;) })) (expression_statement "uVar9 = local_b4[0];" (assignment_expression "uVar9 = local_b4[0]" identifier = (subscript_expression "local_b4[0]" identifier [ number_literal ])) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5)" identifier = (cast_expression "(char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5)" identifier (argument_list "(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5)" ( number_literal , (string_literal ""Idx %-*s Size      %-*s%-*sFile off  Algn"" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar9,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);" (call_expression "printf(pcVar6,uVar9,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8)" identifier (argument_list "(pcVar6,uVar9,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8)" ( identifier , identifier , (string_literal ""Name"" " string_content ") , number_literal , (pointer_expression "&DAT_0004c7fc" & identifier) , number_literal , (pointer_expression "&DAT_0004c7f8" & identifier) ))) ;) (if_statement "if (DAT_000710b4 != 0) {\n      pcVar6 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar6);\n    }" if (parenthesized_expression "(DAT_000710b4 != 0)" ( (binary_expression "DAT_000710b4 != 0" identifier != number_literal) )) (compound_statement "{\n      pcVar6 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar6);\n    }" { (expression_statement "pcVar6 = (char *)dcgettext(0,"  Flags",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Flags",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Flags",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Flags",5)" identifier (argument_list "(0,"  Flags",5)" ( number_literal , (string_literal ""  Flags"" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier ))) ;) })) (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;) (expression_statement "bfd_map_over_sections(param_1,FUN_00016160,local_b4);" (call_expression "bfd_map_over_sections(param_1,FUN_00016160,local_b4)" identifier (argument_list "(param_1,FUN_00016160,local_b4)" ( identifier , identifier , identifier ))) ;) })) (if_statement "if (DAT_000710f8 == 0 && DAT_000710f0 == 0) {\n    if (DAT_000710c4 != 0) {\n      iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n      pvVar10 = DAT_0007105c;\n      if (0 < iVar3) goto LAB_000170fd;\n      goto LAB_00017145;\n    }\n  }\n  else {\nLAB_000170fd:\n    iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n    if (iVar3 < 0) {\n      uVar2 = *param_1;\n      if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(uVar2);\n      }\n      uVar7 = dcgettext(0,"%s: not a dynamic object",5);\n      FUN_000451b0(uVar7,uVar2);\n      DAT_00071110 = 1;\n      DAT_00071050 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);\n      if (DAT_00071050 < 0) goto LAB_00017bfe;\n    }\nLAB_00017145:\n    DAT_0007105c = pvVar10;\n    if ((DAT_000710c4 != 0) &&\n       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0)) {\n      DAT_00071054 = 0;\n    }\n  }" if (parenthesized_expression "(DAT_000710f8 == 0 && DAT_000710f0 == 0)" ( (binary_expression "DAT_000710f8 == 0 && DAT_000710f0 == 0" (binary_expression "DAT_000710f8 == 0" identifier == number_literal) && (binary_expression "DAT_000710f0 == 0" identifier == number_literal)) )) (compound_statement "{\n    if (DAT_000710c4 != 0) {\n      iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n      pvVar10 = DAT_0007105c;\n      if (0 < iVar3) goto LAB_000170fd;\n      goto LAB_00017145;\n    }\n  }" { (if_statement "if (DAT_000710c4 != 0) {\n      iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n      pvVar10 = DAT_0007105c;\n      if (0 < iVar3) goto LAB_000170fd;\n      goto LAB_00017145;\n    }" if (parenthesized_expression "(DAT_000710c4 != 0)" ( (binary_expression "DAT_000710c4 != 0" identifier != number_literal) )) (compound_statement "{\n      iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n      pvVar10 = DAT_0007105c;\n      if (0 < iVar3) goto LAB_000170fd;\n      goto LAB_00017145;\n    }" { (expression_statement "iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);" (assignment_expression "iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1)" identifier = (call_expression "(**(code **)(param_1[1] + 0x1a8))(param_1)" (parenthesized_expression "(**(code **)(param_1[1] + 0x1a8))" ( (pointer_expression "**(code **)(param_1[1] + 0x1a8)" * (pointer_expression "*(code **)(param_1[1] + 0x1a8)" * (cast_expression "(code **)(param_1[1] + 0x1a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1[1] + 0x1a8)" ( (binary_expression "param_1[1] + 0x1a8" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) ))))) )) (argument_list "(param_1)" ( identifier )))) ;) (expression_statement "pvVar10 = DAT_0007105c;" (assignment_expression "pvVar10 = DAT_0007105c" identifier = identifier) ;) (if_statement "if (0 < iVar3) goto LAB_000170fd;" if (parenthesized_expression "(0 < iVar3)" ( (binary_expression "0 < iVar3" number_literal < identifier) )) (goto_statement "goto LAB_000170fd;" goto statement_identifier ;)) (goto_statement "goto LAB_00017145;" goto statement_identifier ;) })) }) (else_clause "else {\nLAB_000170fd:\n    iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n    if (iVar3 < 0) {\n      uVar2 = *param_1;\n      if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(uVar2);\n      }\n      uVar7 = dcgettext(0,"%s: not a dynamic object",5);\n      FUN_000451b0(uVar7,uVar2);\n      DAT_00071110 = 1;\n      DAT_00071050 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);\n      if (DAT_00071050 < 0) goto LAB_00017bfe;\n    }\nLAB_00017145:\n    DAT_0007105c = pvVar10;\n    if ((DAT_000710c4 != 0) &&\n       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0)) {\n      DAT_00071054 = 0;\n    }\n  }" else (compound_statement "{\nLAB_000170fd:\n    iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n    if (iVar3 < 0) {\n      uVar2 = *param_1;\n      if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(uVar2);\n      }\n      uVar7 = dcgettext(0,"%s: not a dynamic object",5);\n      FUN_000451b0(uVar7,uVar2);\n      DAT_00071110 = 1;\n      DAT_00071050 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);\n      if (DAT_00071050 < 0) goto LAB_00017bfe;\n    }\nLAB_00017145:\n    DAT_0007105c = pvVar10;\n    if ((DAT_000710c4 != 0) &&\n       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0)) {\n      DAT_00071054 = 0;\n    }\n  }" { (labeled_statement "LAB_000170fd:\n    iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);" statement_identifier : (expression_statement "iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);" (assignment_expression "iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1)" identifier = (call_expression "(**(code **)(param_1[1] + 0x1a8))(param_1)" (parenthesized_expression "(**(code **)(param_1[1] + 0x1a8))" ( (pointer_expression "**(code **)(param_1[1] + 0x1a8)" * (pointer_expression "*(code **)(param_1[1] + 0x1a8)" * (cast_expression "(code **)(param_1[1] + 0x1a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1[1] + 0x1a8)" ( (binary_expression "param_1[1] + 0x1a8" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) ))))) )) (argument_list "(param_1)" ( identifier )))) ;)) (if_statement "if (iVar3 < 0) {\n      uVar2 = *param_1;\n      if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(uVar2);\n      }\n      uVar7 = dcgettext(0,"%s: not a dynamic object",5);\n      FUN_000451b0(uVar7,uVar2);\n      DAT_00071110 = 1;\n      DAT_00071050 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);\n      if (DAT_00071050 < 0) goto LAB_00017bfe;\n    }" if (parenthesized_expression "(iVar3 < 0)" ( (binary_expression "iVar3 < 0" identifier < number_literal) )) (compound_statement "{\n      uVar2 = *param_1;\n      if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(uVar2);\n      }\n      uVar7 = dcgettext(0,"%s: not a dynamic object",5);\n      FUN_000451b0(uVar7,uVar2);\n      DAT_00071110 = 1;\n      DAT_00071050 = 0;\n      pvVar10 = (void *)0x0;\n    }" { (expression_statement "uVar2 = *param_1;" (assignment_expression "uVar2 = *param_1" identifier = (pointer_expression "*param_1" * identifier)) ;) (if_statement "if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(uVar2);\n      }" if (parenthesized_expression "((*(byte *)((int)param_1 + 0x29) & 8) != 0)" ( (binary_expression "(*(byte *)((int)param_1 + 0x29) & 8) != 0" (parenthesized_expression "(*(byte *)((int)param_1 + 0x29) & 8)" ( (binary_expression "*(byte *)((int)param_1 + 0x29) & 8" (pointer_expression "*(byte *)((int)param_1 + 0x29)" * (cast_expression "(byte *)((int)param_1 + 0x29)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)param_1 + 0x29)" ( (binary_expression "(int)param_1 + 0x29" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) & number_literal) )) != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(uVar2);\n      }" { comment (expression_statement "FUN_000450f0(uVar2);" (call_expression "FUN_000450f0(uVar2)" identifier (argument_list "(uVar2)" ( identifier ))) ;) })) (expression_statement "uVar7 = dcgettext(0,"%s: not a dynamic object",5);" (assignment_expression "uVar7 = dcgettext(0,"%s: not a dynamic object",5)" identifier = (call_expression "dcgettext(0,"%s: not a dynamic object",5)" identifier (argument_list "(0,"%s: not a dynamic object",5)" ( number_literal , (string_literal ""%s: not a dynamic object"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_000451b0(uVar7,uVar2);" (call_expression "FUN_000451b0(uVar7,uVar2)" identifier (argument_list "(uVar7,uVar2)" ( identifier , identifier ))) ;) (expression_statement "DAT_00071110 = 1;" (assignment_expression "DAT_00071110 = 1" identifier = number_literal) ;) (expression_statement "DAT_00071050 = 0;" (assignment_expression "DAT_00071050 = 0" identifier = number_literal) ;) (expression_statement "pvVar10 = (void *)0x0;" (assignment_expression "pvVar10 = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);\n      if (DAT_00071050 < 0) goto LAB_00017bfe;\n    }" else (compound_statement "{\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);\n      if (DAT_00071050 < 0) goto LAB_00017bfe;\n    }" { (expression_statement "pvVar10 = (void *)0x0;" (assignment_expression "pvVar10 = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n        pvVar10 = (void *)xmalloc(iVar3);\n      }" { (expression_statement "pvVar10 = (void *)xmalloc(iVar3);" (assignment_expression "pvVar10 = (void *)xmalloc(iVar3)" identifier = (cast_expression "(void *)xmalloc(iVar3)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(iVar3)" identifier (argument_list "(iVar3)" ( identifier ))))) ;) })) (expression_statement "DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);" (assignment_expression "DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10)" identifier = (call_expression "(**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10)" (parenthesized_expression "(**(code **)(param_1[1] + 0x1ac))" ( (pointer_expression "**(code **)(param_1[1] + 0x1ac)" * (pointer_expression "*(code **)(param_1[1] + 0x1ac)" * (cast_expression "(code **)(param_1[1] + 0x1ac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1[1] + 0x1ac)" ( (binary_expression "param_1[1] + 0x1ac" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) ))))) )) (argument_list "(param_1,pvVar10)" ( identifier , identifier )))) ;) (if_statement "if (DAT_00071050 < 0) goto LAB_00017bfe;" if (parenthesized_expression "(DAT_00071050 < 0)" ( (binary_expression "DAT_00071050 < 0" identifier < number_literal) )) (goto_statement "goto LAB_00017bfe;" goto statement_identifier ;)) }))) (labeled_statement "LAB_00017145:\n    DAT_0007105c = pvVar10;" statement_identifier : (expression_statement "DAT_0007105c = pvVar10;" (assignment_expression "DAT_0007105c = pvVar10" identifier = identifier) ;)) (if_statement "if ((DAT_000710c4 != 0) &&\n       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0)) {\n      DAT_00071054 = 0;\n    }" if (parenthesized_expression "((DAT_000710c4 != 0) &&\n       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0))" ( (binary_expression "(DAT_000710c4 != 0) &&\n       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0)" (parenthesized_expression "(DAT_000710c4 != 0)" ( (binary_expression "DAT_000710c4 != 0" identifier != number_literal) )) && (parenthesized_expression "(DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0)" ( (comma_expression "DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0" (assignment_expression "DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058)" identifier = (call_expression "(**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058)" (parenthesized_expression "(**(code **)(param_1[1] + 0x1b0))" ( (pointer_expression "**(code **)(param_1[1] + 0x1b0)" * (pointer_expression "*(code **)(param_1[1] + 0x1b0)" * (cast_expression "(code **)(param_1[1] + 0x1b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1[1] + 0x1b0)" ( (binary_expression "param_1[1] + 0x1b0" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) ))))) )) (argument_list "(param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058)" ( identifier , identifier , identifier , identifier , identifier , (pointer_expression "&DAT_00071058" & identifier) )))) , (binary_expression "DAT_00071054 < 0" identifier < number_literal)) ))) )) (compound_statement "{\n      DAT_00071054 = 0;\n    }" { (expression_statement "DAT_00071054 = 0;" (assignment_expression "DAT_00071054 = 0" identifier = number_literal) ;) })) }))) (if_statement "if (DAT_000710fc != 0) {\n    FUN_00016db0();\n  }" if (parenthesized_expression "(DAT_000710fc != 0)" ( (binary_expression "DAT_000710fc != 0" identifier != number_literal) )) (compound_statement "{\n    FUN_00016db0();\n  }" { (expression_statement "FUN_00016db0();" (call_expression "FUN_00016db0()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (DAT_000710f8 != 0) {\n    FUN_00016db0();\n  }" if (parenthesized_expression "(DAT_000710f8 != 0)" ( (binary_expression "DAT_000710f8 != 0" identifier != number_literal) )) (compound_statement "{\n    FUN_00016db0();\n  }" { (expression_statement "FUN_00016db0();" (call_expression "FUN_00016db0()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (DAT_000710d0 != 0) {\n    FUN_00015f30();\n  }" if (parenthesized_expression "(DAT_000710d0 != 0)" ( (binary_expression "DAT_000710d0 != 0" identifier != number_literal) )) (compound_statement "{\n    FUN_00015f30();\n  }" { (expression_statement "FUN_00015f30();" (call_expression "FUN_00015f30()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (DAT_000710cc != 0) {\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n  }" if (parenthesized_expression "(DAT_000710cc != 0)" ( (binary_expression "DAT_000710cc != 0" identifier != number_literal) )) (compound_statement "{\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n  }" { (expression_statement "FUN_00014db0();" (call_expression "FUN_00014db0()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_00014db0();" (call_expression "FUN_00014db0()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_00014db0();" (call_expression "FUN_00014db0()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_00014db0();" (call_expression "FUN_00014db0()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_00014db0();" (call_expression "FUN_00014db0()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (DAT_000710f4 == 0) {\nLAB_00017355:\n    if (DAT_000710f0 != 0) {\n      if (DAT_000710c4 != 0) goto LAB_00017371;\n      iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n      if (iVar3 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (iVar3 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }\n    }\nLAB_000171f0:\n    if (DAT_00071108 != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(param_1,FUN_00016840,0);\n    }\n    if (DAT_000710c4 == 0) goto joined_r0x0001721a;\n  }\n  else {\n    if (DAT_000710c4 == 0) {\n      bfd_map_over_sections(param_1,FUN_00018570,0);\n      goto LAB_00017355;\n    }\n    if (DAT_000710f0 == 0) goto LAB_000171f0;\nLAB_00017371:\n    if (DAT_00071108 != 0) goto LAB_00017ac0;\n  }" if (parenthesized_expression "(DAT_000710f4 == 0)" ( (binary_expression "DAT_000710f4 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_00017355:\n    if (DAT_000710f0 != 0) {\n      if (DAT_000710c4 != 0) goto LAB_00017371;\n      iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n      if (iVar3 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (iVar3 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }\n    }\nLAB_000171f0:\n    if (DAT_00071108 != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(param_1,FUN_00016840,0);\n    }\n    if (DAT_000710c4 == 0) goto joined_r0x0001721a;\n  }" { (labeled_statement "LAB_00017355:\n    if (DAT_000710f0 != 0) {\n      if (DAT_000710c4 != 0) goto LAB_00017371;\n      iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n      if (iVar3 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (iVar3 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }\n    }" statement_identifier : (if_statement "if (DAT_000710f0 != 0) {\n      if (DAT_000710c4 != 0) goto LAB_00017371;\n      iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n      if (iVar3 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (iVar3 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }\n    }" if (parenthesized_expression "(DAT_000710f0 != 0)" ( (binary_expression "DAT_000710f0 != 0" identifier != number_literal) )) (compound_statement "{\n      if (DAT_000710c4 != 0) goto LAB_00017371;\n      iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n      if (iVar3 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (iVar3 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }\n    }" { (if_statement "if (DAT_000710c4 != 0) goto LAB_00017371;" if (parenthesized_expression "(DAT_000710c4 != 0)" ( (binary_expression "DAT_000710c4 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00017371;" goto statement_identifier ;)) (expression_statement "iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);" (assignment_expression "iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1)" identifier = (call_expression "(**(code **)(param_1[1] + 0x1b4))(param_1)" (parenthesized_expression "(**(code **)(param_1[1] + 0x1b4))" ( (pointer_expression "**(code **)(param_1[1] + 0x1b4)" * (pointer_expression "*(code **)(param_1[1] + 0x1b4)" * (cast_expression "(code **)(param_1[1] + 0x1b4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1[1] + 0x1b4)" ( (binary_expression "param_1[1] + 0x1b4" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) ))))) )) (argument_list "(param_1)" ( identifier )))) ;) (if_statement "if (iVar3 < 0) goto LAB_00017bfe;" if (parenthesized_expression "(iVar3 < 0)" ( (binary_expression "iVar3 < 0" identifier < number_literal) )) (goto_statement "goto LAB_00017bfe;" goto statement_identifier ;)) (expression_statement "printf("DYNAMIC RELOCATION RECORDS");" (call_expression "printf("DYNAMIC RELOCATION RECORDS")" identifier (argument_list "("DYNAMIC RELOCATION RECORDS")" ( (string_literal ""DYNAMIC RELOCATION RECORDS"" " string_content ") ))) ;) (if_statement "if (iVar3 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n        puts(" (none)\n");\n      }" { (expression_statement "puts(" (none)\n");" (call_expression "puts(" (none)\n")" identifier (argument_list "(" (none)\n")" ( (string_literal "" (none)\n"" " string_content escape_sequence ") ))) ;) }) (else_clause "else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }" else (compound_statement "{\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }" { (expression_statement "pvVar10 = (void *)xmalloc(iVar3);" (assignment_expression "pvVar10 = (void *)xmalloc(iVar3)" identifier = (cast_expression "(void *)xmalloc(iVar3)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(iVar3)" identifier (argument_list "(iVar3)" ( identifier ))))) ;) (expression_statement "iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);" (assignment_expression "iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c)" identifier = (call_expression "(**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c)" (parenthesized_expression "(**(code **)(param_1[1] + 0x1b8))" ( (pointer_expression "**(code **)(param_1[1] + 0x1b8)" * (pointer_expression "*(code **)(param_1[1] + 0x1b8)" * (cast_expression "(code **)(param_1[1] + 0x1b8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1[1] + 0x1b8)" ( (binary_expression "param_1[1] + 0x1b8" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) ))))) )) (argument_list "(param_1,pvVar10,DAT_0007105c)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar3 < 0) goto LAB_00017bfe;" if (parenthesized_expression "(iVar3 < 0)" ( (binary_expression "iVar3 < 0" identifier < number_literal) )) (goto_statement "goto LAB_00017bfe;" goto statement_identifier ;)) (if_statement "if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n          puts(" (none)\n");\n        }" { (expression_statement "puts(" (none)\n");" (call_expression "puts(" (none)\n")" identifier (argument_list "(" (none)\n")" ( (string_literal "" (none)\n"" " string_content escape_sequence ") ))) ;) }) (else_clause "else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }" else (compound_statement "{\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }" { (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;) (expression_statement "FUN_000153f0(iVar3);" (call_expression "FUN_000153f0(iVar3)" identifier (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "puts("\n");" (call_expression "puts("\n")" identifier (argument_list "("\n")" ( (string_literal ""\n"" " escape_sequence ") ))) ;) }))) (expression_statement "free(pvVar10);" (call_expression "free(pvVar10)" identifier (argument_list "(pvVar10)" ( identifier ))) ;) }))) }))) (labeled_statement "LAB_000171f0:\n    if (DAT_00071108 != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(param_1,FUN_00016840,0);\n    }" statement_identifier : (if_statement "if (DAT_00071108 != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(param_1,FUN_00016840,0);\n    }" if (parenthesized_expression "(DAT_00071108 != 0)" ( (binary_expression "DAT_00071108 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_00017ac0:\n      bfd_map_over_sections(param_1,FUN_00016840,0);\n    }" { (labeled_statement "LAB_00017ac0:\n      bfd_map_over_sections(param_1,FUN_00016840,0);" statement_identifier : (expression_statement "bfd_map_over_sections(param_1,FUN_00016840,0);" (call_expression "bfd_map_over_sections(param_1,FUN_00016840,0)" identifier (argument_list "(param_1,FUN_00016840,0)" ( identifier , identifier , number_literal ))) ;)) }))) (if_statement "if (DAT_000710c4 == 0) goto joined_r0x0001721a;" if (parenthesized_expression "(DAT_000710c4 == 0)" ( (binary_expression "DAT_000710c4 == 0" identifier == number_literal) )) (goto_statement "goto joined_r0x0001721a;" goto statement_identifier ;)) }) (else_clause "else {\n    if (DAT_000710c4 == 0) {\n      bfd_map_over_sections(param_1,FUN_00018570,0);\n      goto LAB_00017355;\n    }\n    if (DAT_000710f0 == 0) goto LAB_000171f0;\nLAB_00017371:\n    if (DAT_00071108 != 0) goto LAB_00017ac0;\n  }" else (compound_statement "{\n    if (DAT_000710c4 == 0) {\n      bfd_map_over_sections(param_1,FUN_00018570,0);\n      goto LAB_00017355;\n    }\n    if (DAT_000710f0 == 0) goto LAB_000171f0;\nLAB_00017371:\n    if (DAT_00071108 != 0) goto LAB_00017ac0;\n  }" { (if_statement "if (DAT_000710c4 == 0) {\n      bfd_map_over_sections(param_1,FUN_00018570,0);\n      goto LAB_00017355;\n    }" if (parenthesized_expression "(DAT_000710c4 == 0)" ( (binary_expression "DAT_000710c4 == 0" identifier == number_literal) )) (compound_statement "{\n      bfd_map_over_sections(param_1,FUN_00018570,0);\n      goto LAB_00017355;\n    }" { (expression_statement "bfd_map_over_sections(param_1,FUN_00018570,0);" (call_expression "bfd_map_over_sections(param_1,FUN_00018570,0)" identifier (argument_list "(param_1,FUN_00018570,0)" ( identifier , identifier , number_literal ))) ;) (goto_statement "goto LAB_00017355;" goto statement_identifier ;) })) (if_statement "if (DAT_000710f0 == 0) goto LAB_000171f0;" if (parenthesized_expression "(DAT_000710f0 == 0)" ( (binary_expression "DAT_000710f0 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000171f0;" goto statement_identifier ;)) (labeled_statement "LAB_00017371:\n    if (DAT_00071108 != 0) goto LAB_00017ac0;" statement_identifier : (if_statement "if (DAT_00071108 != 0) goto LAB_00017ac0;" if (parenthesized_expression "(DAT_00071108 != 0)" ( (binary_expression "DAT_00071108 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00017ac0;" goto statement_identifier ;))) }))) (expression_statement "DAT_0007102c = 0;" (assignment_expression "DAT_0007102c = 0" identifier = number_literal) ;) (expression_statement "DAT_00071038 = 0;" (assignment_expression "DAT_00071038 = 0" identifier = number_literal) ;) (expression_statement "DAT_00071034 = 0xffffffff;" (assignment_expression "DAT_00071034 = 0xffffffff" identifier = number_literal) ;) (expression_statement "DAT_00071060 = DAT_00071068;" (assignment_expression "DAT_00071060 = DAT_00071068" identifier = identifier) ;) (if_statement "if (DAT_00071068 == 0) {\n    DAT_00071060 = DAT_00071050;\n  }" if (parenthesized_expression "(DAT_00071068 == 0)" ( (binary_expression "DAT_00071068 == 0" identifier == number_literal) )) (compound_statement "{\n    DAT_00071060 = DAT_00071050;\n  }" { (expression_statement "DAT_00071060 = DAT_00071050;" (assignment_expression "DAT_00071060 = DAT_00071050" identifier = identifier) ;) })) (expression_statement "DAT_00071030 = 0;" (assignment_expression "DAT_00071030 = 0" identifier = number_literal) ;) (expression_statement "__dest = (int *)xmalloc((DAT_00071060 + DAT_00071054) * 4);" (assignment_expression "__dest = (int *)xmalloc((DAT_00071060 + DAT_00071054) * 4)" identifier = (cast_expression "(int *)xmalloc((DAT_00071060 + DAT_00071054) * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc((DAT_00071060 + DAT_00071054) * 4)" identifier (argument_list "((DAT_00071060 + DAT_00071054) * 4)" ( (binary_expression "(DAT_00071060 + DAT_00071054) * 4" (parenthesized_expression "(DAT_00071060 + DAT_00071054)" ( (binary_expression "DAT_00071060 + DAT_00071054" identifier + identifier) )) * number_literal) ))))) ;) (expression_statement "local_e8 = DAT_00071060;" (assignment_expression "local_e8 = DAT_00071060" identifier = identifier) ;) (expression_statement "pvVar10 = DAT_0007106c;" (assignment_expression "pvVar10 = DAT_0007106c" identifier = identifier) ;) (if_statement "if (DAT_00071068 == 0) {\n    pvVar10 = DAT_0007105c;\n  }" if (parenthesized_expression "(DAT_00071068 == 0)" ( (binary_expression "DAT_00071068 == 0" identifier == number_literal) )) (compound_statement "{\n    pvVar10 = DAT_0007105c;\n  }" { (expression_statement "pvVar10 = DAT_0007105c;" (assignment_expression "pvVar10 = DAT_0007105c" identifier = identifier) ;) })) (expression_statement "DAT_00071064 = __dest;" (assignment_expression "DAT_00071064 = __dest" identifier = identifier) ;) (expression_statement "memcpy(__dest,pvVar10,DAT_00071060 << 2);" (call_expression "memcpy(__dest,pvVar10,DAT_00071060 << 2)" identifier (argument_list "(__dest,pvVar10,DAT_00071060 << 2)" ( identifier , identifier , (binary_expression "DAT_00071060 << 2" identifier << number_literal) ))) ;) (expression_statement "puVar4 = PTR__bfd_std_section_0006ffd8 + 0xa8;" (assignment_expression "puVar4 = PTR__bfd_std_section_0006ffd8 + 0xa8" identifier = (binary_expression "PTR__bfd_std_section_0006ffd8 + 0xa8" identifier + number_literal)) ;) (expression_statement "local_f0 = __dest;" (assignment_expression "local_f0 = __dest" identifier = identifier) ;) (expression_statement "local_ec = __dest;" (assignment_expression "local_ec = __dest" identifier = identifier) ;) (labeled_statement "LAB_00017428:\n  local_e8 = local_e8 + -1;" statement_identifier : (expression_statement "local_e8 = local_e8 + -1;" (assignment_expression "local_e8 = local_e8 + -1" identifier = (binary_expression "local_e8 + -1" identifier + number_literal)) ;)) (if_statement "if (-1 < local_e8) {\n    while( true ) {\n      piVar1 = local_f0 + 1;\n      iVar3 = *local_f0;\n      pbVar12 = *(byte **)(iVar3 + 4);\n      local_f0 = piVar1;\n      if ((pbVar12 == (byte *)0x0) || (*pbVar12 == 0)) break;\n      bVar16 = false;\n      bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0;\n      if (!bVar18) {\n        iVar8 = 4;\n        pbVar11 = pbVar12;\n        pbVar14 = &DAT_0004c8bd;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);\n        bVar17 = false;\n        bVar16 = (!bVar16 && !bVar18) == bVar16;\n        if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }\n      }\n      if ((*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)) break;\n      *local_ec = iVar3;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }\n    goto LAB_00017428;\n  }" if (parenthesized_expression "(-1 < local_e8)" ( (binary_expression "-1 < local_e8" number_literal < identifier) )) (compound_statement "{\n    while( true ) {\n      piVar1 = local_f0 + 1;\n      iVar3 = *local_f0;\n      pbVar12 = *(byte **)(iVar3 + 4);\n      local_f0 = piVar1;\n      if ((pbVar12 == (byte *)0x0) || (*pbVar12 == 0)) break;\n      bVar16 = false;\n      bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0;\n      if (!bVar18) {\n        iVar8 = 4;\n        pbVar11 = pbVar12;\n        pbVar14 = &DAT_0004c8bd;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);\n        bVar17 = false;\n        bVar16 = (!bVar16 && !bVar18) == bVar16;\n        if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }\n      }\n      if ((*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)) break;\n      *local_ec = iVar3;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }\n    goto LAB_00017428;\n  }" { (while_statement "while( true ) {\n      piVar1 = local_f0 + 1;\n      iVar3 = *local_f0;\n      pbVar12 = *(byte **)(iVar3 + 4);\n      local_f0 = piVar1;\n      if ((pbVar12 == (byte *)0x0) || (*pbVar12 == 0)) break;\n      bVar16 = false;\n      bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0;\n      if (!bVar18) {\n        iVar8 = 4;\n        pbVar11 = pbVar12;\n        pbVar14 = &DAT_0004c8bd;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);\n        bVar17 = false;\n        bVar16 = (!bVar16 && !bVar18) == bVar16;\n        if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }\n      }\n      if ((*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)) break;\n      *local_ec = iVar3;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n      piVar1 = local_f0 + 1;\n      iVar3 = *local_f0;\n      pbVar12 = *(byte **)(iVar3 + 4);\n      local_f0 = piVar1;\n      if ((pbVar12 == (byte *)0x0) || (*pbVar12 == 0)) break;\n      bVar16 = false;\n      bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0;\n      if (!bVar18) {\n        iVar8 = 4;\n        pbVar11 = pbVar12;\n        pbVar14 = &DAT_0004c8bd;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);\n        bVar17 = false;\n        bVar16 = (!bVar16 && !bVar18) == bVar16;\n        if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }\n      }\n      if ((*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)) break;\n      *local_ec = iVar3;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }" { (expression_statement "piVar1 = local_f0 + 1;" (assignment_expression "piVar1 = local_f0 + 1" identifier = (binary_expression "local_f0 + 1" identifier + number_literal)) ;) (expression_statement "iVar3 = *local_f0;" (assignment_expression "iVar3 = *local_f0" identifier = (pointer_expression "*local_f0" * identifier)) ;) (expression_statement "pbVar12 = *(byte **)(iVar3 + 4);" (assignment_expression "pbVar12 = *(byte **)(iVar3 + 4)" identifier = (pointer_expression "*(byte **)(iVar3 + 4)" * (cast_expression "(byte **)(iVar3 + 4)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar3 + 4)" ( (binary_expression "iVar3 + 4" identifier + number_literal) ))))) ;) (expression_statement "local_f0 = piVar1;" (assignment_expression "local_f0 = piVar1" identifier = identifier) ;) (if_statement "if ((pbVar12 == (byte *)0x0) || (*pbVar12 == 0)) break;" if (parenthesized_expression "((pbVar12 == (byte *)0x0) || (*pbVar12 == 0))" ( (binary_expression "(pbVar12 == (byte *)0x0) || (*pbVar12 == 0)" (parenthesized_expression "(pbVar12 == (byte *)0x0)" ( (binary_expression "pbVar12 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(*pbVar12 == 0)" ( (binary_expression "*pbVar12 == 0" (pointer_expression "*pbVar12" * identifier) == number_literal) ))) )) (break_statement "break;" break ;)) (expression_statement "bVar16 = false;" (assignment_expression "bVar16 = false" identifier = false) ;) (expression_statement "bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0;" (assignment_expression "bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0" identifier = (binary_expression "(*(uint *)(iVar3 + 0xc) & 0x104) == 0" (parenthesized_expression "(*(uint *)(iVar3 + 0xc) & 0x104)" ( (binary_expression "*(uint *)(iVar3 + 0xc) & 0x104" (pointer_expression "*(uint *)(iVar3 + 0xc)" * (cast_expression "(uint *)(iVar3 + 0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0xc)" ( (binary_expression "iVar3 + 0xc" identifier + number_literal) )))) & number_literal) )) == number_literal)) ;) (if_statement "if (!bVar18) {\n        iVar8 = 4;\n        pbVar11 = pbVar12;\n        pbVar14 = &DAT_0004c8bd;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);\n        bVar17 = false;\n        bVar16 = (!bVar16 && !bVar18) == bVar16;\n        if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }\n      }" if (parenthesized_expression "(!bVar18)" ( (unary_expression "!bVar18" ! identifier) )) (compound_statement "{\n        iVar8 = 4;\n        pbVar11 = pbVar12;\n        pbVar14 = &DAT_0004c8bd;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);\n        bVar17 = false;\n        bVar16 = (!bVar16 && !bVar18) == bVar16;\n        if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }\n      }" { (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" identifier = number_literal) ;) (expression_statement "pbVar11 = pbVar12;" (assignment_expression "pbVar11 = pbVar12" identifier = identifier) ;) (expression_statement "pbVar14 = &DAT_0004c8bd;" (assignment_expression "pbVar14 = &DAT_0004c8bd" identifier = (pointer_expression "&DAT_0004c8bd" & identifier)) ;) (do_statement "do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);" do (compound_statement "{\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar16 = *pbVar11 < *pbVar14;" (assignment_expression "bVar16 = *pbVar11 < *pbVar14" identifier = (binary_expression "*pbVar11 < *pbVar14" (pointer_expression "*pbVar11" * identifier) < (pointer_expression "*pbVar14" * identifier))) ;) (expression_statement "bVar18 = *pbVar11 == *pbVar14;" (assignment_expression "bVar18 = *pbVar11 == *pbVar14" identifier = (binary_expression "*pbVar11 == *pbVar14" (pointer_expression "*pbVar11" * identifier) == (pointer_expression "*pbVar14" * identifier))) ;) (expression_statement "pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1" identifier = (binary_expression "pbVar11 + (uint)bVar19 * -2 + 1" (binary_expression "pbVar11 + (uint)bVar19 * -2" identifier + (binary_expression "(uint)bVar19 * -2" (cast_expression "(uint)bVar19" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;" (assignment_expression "pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1" identifier = (binary_expression "pbVar14 + (uint)bVar19 * -2 + 1" (binary_expression "pbVar14 + (uint)bVar19 * -2" identifier + (binary_expression "(uint)bVar19 * -2" (cast_expression "(uint)bVar19" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar18)" ( identifier )) ;) (expression_statement "bVar17 = false;" (assignment_expression "bVar17 = false" identifier = false) ;) (expression_statement "bVar16 = (!bVar16 && !bVar18) == bVar16;" (assignment_expression "bVar16 = (!bVar16 && !bVar18) == bVar16" identifier = (binary_expression "(!bVar16 && !bVar18) == bVar16" (parenthesized_expression "(!bVar16 && !bVar18)" ( (binary_expression "!bVar16 && !bVar18" (unary_expression "!bVar16" ! identifier) && (unary_expression "!bVar18" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }" if (parenthesized_expression "(!bVar16)" ( (unary_expression "!bVar16" ! identifier) )) (compound_statement "{\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }" { (expression_statement "iVar8 = 5;" (assignment_expression "iVar8 = 5" identifier = number_literal) ;) (expression_statement "pbVar11 = &DAT_0004c8c2;" (assignment_expression "pbVar11 = &DAT_0004c8c2" identifier = (pointer_expression "&DAT_0004c8c2" & identifier)) ;) (do_statement "do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);" do (compound_statement "{\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar17 = *pbVar12 < *pbVar11;" (assignment_expression "bVar17 = *pbVar12 < *pbVar11" identifier = (binary_expression "*pbVar12 < *pbVar11" (pointer_expression "*pbVar12" * identifier) < (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "bVar16 = *pbVar12 == *pbVar11;" (assignment_expression "bVar16 = *pbVar12 == *pbVar11" identifier = (binary_expression "*pbVar12 == *pbVar11" (pointer_expression "*pbVar12" * identifier) == (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;" (assignment_expression "pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1" identifier = (binary_expression "pbVar12 + (uint)bVar19 * -2 + 1" (binary_expression "pbVar12 + (uint)bVar19 * -2" identifier + (binary_expression "(uint)bVar19 * -2" (cast_expression "(uint)bVar19" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1" identifier = (binary_expression "pbVar11 + (uint)bVar19 * -2 + 1" (binary_expression "pbVar11 + (uint)bVar19 * -2" identifier + (binary_expression "(uint)bVar19 * -2" (cast_expression "(uint)bVar19" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar16)" ( identifier )) ;) (if_statement "if ((!bVar17 && !bVar16) != bVar17) break;" if (parenthesized_expression "((!bVar17 && !bVar16) != bVar17)" ( (binary_expression "(!bVar17 && !bVar16) != bVar17" (parenthesized_expression "(!bVar17 && !bVar16)" ( (binary_expression "!bVar17 && !bVar16" (unary_expression "!bVar17" ! identifier) && (unary_expression "!bVar16" ! identifier)) )) != identifier) )) (break_statement "break;" break ;)) })) })) (if_statement "if ((*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)) break;" if (parenthesized_expression "((*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0))" ( (binary_expression "(*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)" (parenthesized_expression "(*(undefined **)(iVar3 + 0x10) == puVar4)" ( (binary_expression "*(undefined **)(iVar3 + 0x10) == puVar4" (pointer_expression "*(undefined **)(iVar3 + 0x10)" * (cast_expression "(undefined **)(iVar3 + 0x10)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar3 + 0x10)" ( (binary_expression "iVar3 + 0x10" identifier + number_literal) )))) == identifier) )) || (parenthesized_expression "(((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)" ( (binary_expression "((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0" (parenthesized_expression "((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10)" ( (binary_expression "(*(undefined **)(iVar3 + 0x10))[0x15] & 0x10" (subscript_expression "(*(undefined **)(iVar3 + 0x10))[0x15]" (parenthesized_expression "(*(undefined **)(iVar3 + 0x10))" ( (pointer_expression "*(undefined **)(iVar3 + 0x10)" * (cast_expression "(undefined **)(iVar3 + 0x10)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar3 + 0x10)" ( (binary_expression "iVar3 + 0x10" identifier + number_literal) )))) )) [ number_literal ]) & number_literal) )) != number_literal) ))) )) (break_statement "break;" break ;)) (expression_statement "*local_ec = iVar3;" (assignment_expression "*local_ec = iVar3" (pointer_expression "*local_ec" * identifier) = identifier) ;) (expression_statement "local_ec = local_ec + 1;" (assignment_expression "local_ec = local_ec + 1" identifier = (binary_expression "local_ec + 1" identifier + number_literal)) ;) (expression_statement "local_e8 = local_e8 + -1;" (assignment_expression "local_e8 = local_e8 + -1" identifier = (binary_expression "local_e8 + -1" identifier + number_literal)) ;) (if_statement "if (local_e8 < 0) goto LAB_000174ab;" if (parenthesized_expression "(local_e8 < 0)" ( (binary_expression "local_e8 < 0" identifier < number_literal) )) (goto_statement "goto LAB_000174ab;" goto statement_identifier ;)) })) (goto_statement "goto LAB_00017428;" goto statement_identifier ;) })) (labeled_statement "LAB_000174ab:\n  DAT_00071060 = (int)local_ec - (int)__dest >> 2;" statement_identifier : (expression_statement "DAT_00071060 = (int)local_ec - (int)__dest >> 2;" (assignment_expression "DAT_00071060 = (int)local_ec - (int)__dest >> 2" identifier = (binary_expression "(int)local_ec - (int)__dest >> 2" (binary_expression "(int)local_ec - (int)__dest" (cast_expression "(int)local_ec" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)__dest" ( (type_descriptor "int" primitive_type) ) identifier)) >> number_literal)) ;)) (if_statement "if (0 < DAT_00071054) {\n    DAT_00071060 = DAT_00071060 + DAT_00071054;\n    pvVar10 = DAT_00071058;\n    do {\n      *local_ec = (int)pvVar10;\n      local_ec = local_ec + 1;\n      pvVar10 = (void *)((int)pvVar10 + 0x18);\n    } while (__dest + DAT_00071060 != local_ec);\n  }" if (parenthesized_expression "(0 < DAT_00071054)" ( (binary_expression "0 < DAT_00071054" number_literal < identifier) )) (compound_statement "{\n    DAT_00071060 = DAT_00071060 + DAT_00071054;\n    pvVar10 = DAT_00071058;\n    do {\n      *local_ec = (int)pvVar10;\n      local_ec = local_ec + 1;\n      pvVar10 = (void *)((int)pvVar10 + 0x18);\n    } while (__dest + DAT_00071060 != local_ec);\n  }" { (expression_statement "DAT_00071060 = DAT_00071060 + DAT_00071054;" (assignment_expression "DAT_00071060 = DAT_00071060 + DAT_00071054" identifier = (binary_expression "DAT_00071060 + DAT_00071054" identifier + identifier)) ;) (expression_statement "pvVar10 = DAT_00071058;" (assignment_expression "pvVar10 = DAT_00071058" identifier = identifier) ;) (do_statement "do {\n      *local_ec = (int)pvVar10;\n      local_ec = local_ec + 1;\n      pvVar10 = (void *)((int)pvVar10 + 0x18);\n    } while (__dest + DAT_00071060 != local_ec);" do (compound_statement "{\n      *local_ec = (int)pvVar10;\n      local_ec = local_ec + 1;\n      pvVar10 = (void *)((int)pvVar10 + 0x18);\n    }" { (expression_statement "*local_ec = (int)pvVar10;" (assignment_expression "*local_ec = (int)pvVar10" (pointer_expression "*local_ec" * identifier) = (cast_expression "(int)pvVar10" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "local_ec = local_ec + 1;" (assignment_expression "local_ec = local_ec + 1" identifier = (binary_expression "local_ec + 1" identifier + number_literal)) ;) (expression_statement "pvVar10 = (void *)((int)pvVar10 + 0x18);" (assignment_expression "pvVar10 = (void *)((int)pvVar10 + 0x18)" identifier = (cast_expression "(void *)((int)pvVar10 + 0x18)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pvVar10 + 0x18)" ( (binary_expression "(int)pvVar10 + 0x18" (cast_expression "(int)pvVar10" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) }) while (parenthesized_expression "(__dest + DAT_00071060 != local_ec)" ( (binary_expression "__dest + DAT_00071060 != local_ec" (binary_expression "__dest + DAT_00071060" identifier + identifier) != identifier) )) ;) })) (expression_statement "qsort(__dest,DAT_00071060,4,FUN_00015990);" (call_expression "qsort(__dest,DAT_00071060,4,FUN_00015990)" identifier (argument_list "(__dest,DAT_00071060,4,FUN_00015990)" ( identifier , identifier , number_literal , identifier ))) ;) (expression_statement "init_disassemble_info(local_b4,*(undefined4 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0);" (call_expression "init_disassemble_info(local_b4,*(undefined4 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0)" identifier (argument_list "(local_b4,*(undefined4 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0)" ( identifier , (pointer_expression "*(undefined4 *)PTR_stdout_0006ffdc" * (cast_expression "(undefined4 *)PTR_stdout_0006ffdc" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , identifier ))) ;) (expression_statement "local_ac = local_d0;" (assignment_expression "local_ac = local_d0" identifier = identifier) ;) (expression_statement "local_68 = FUN_000153c0;" (assignment_expression "local_68 = FUN_000153c0" identifier = identifier) ;) (expression_statement "local_64 = FUN_00014c20;" (assignment_expression "local_64 = FUN_00014c20" identifier = identifier) ;) (expression_statement "local_c8 = 0;" (assignment_expression "local_c8 = 0" identifier = number_literal) ;) (expression_statement "local_c4 = (void *)0x0;" (assignment_expression "local_c4 = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_c0 = 0;" (assignment_expression "local_c0 = 0" identifier = number_literal) ;) (expression_statement "local_b8 = 0;" (assignment_expression "local_b8 = 0" identifier = number_literal) ;) (expression_statement "local_d0[0] = param_1;" (assignment_expression "local_d0[0] = param_1" (subscript_expression "local_d0[0]" identifier [ number_literal ]) = identifier) ;) (if_statement "if (DAT_00071074 != 0) {\n    iVar8 = bfd_scan_arch(DAT_00071074);\n    iVar3 = DAT_00071074;\n    if (iVar8 == 0) {\n      uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    /* WARNING: Subroutine does not return */\n      FUN_00045180(uVar2,iVar3);\n    }\n    param_1[0x20] = iVar8;\n  }" if (parenthesized_expression "(DAT_00071074 != 0)" ( (binary_expression "DAT_00071074 != 0" identifier != number_literal) )) (compound_statement "{\n    iVar8 = bfd_scan_arch(DAT_00071074);\n    iVar3 = DAT_00071074;\n    if (iVar8 == 0) {\n      uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    /* WARNING: Subroutine does not return */\n      FUN_00045180(uVar2,iVar3);\n    }\n    param_1[0x20] = iVar8;\n  }" { (expression_statement "iVar8 = bfd_scan_arch(DAT_00071074);" (assignment_expression "iVar8 = bfd_scan_arch(DAT_00071074)" identifier = (call_expression "bfd_scan_arch(DAT_00071074)" identifier (argument_list "(DAT_00071074)" ( identifier )))) ;) (expression_statement "iVar3 = DAT_00071074;" (assignment_expression "iVar3 = DAT_00071074" identifier = identifier) ;) (if_statement "if (iVar8 == 0) {\n      uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    /* WARNING: Subroutine does not return */\n      FUN_00045180(uVar2,iVar3);\n    }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n      uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    /* WARNING: Subroutine does not return */\n      FUN_00045180(uVar2,iVar3);\n    }" { (expression_statement "uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest);" (assignment_expression "uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest)" identifier = (call_expression "dcgettext(0,"can\'t use supplied machine %s",5,__dest)" identifier (argument_list "(0,"can\'t use supplied machine %s",5,__dest)" ( number_literal , (string_literal ""can\'t use supplied machine %s"" " string_content escape_sequence string_content ") , number_literal , identifier )))) ;) comment (expression_statement "FUN_00045180(uVar2,iVar3);" (call_expression "FUN_00045180(uVar2,iVar3)" identifier (argument_list "(uVar2,iVar3)" ( identifier , identifier ))) ;) })) (expression_statement "param_1[0x20] = iVar8;" (assignment_expression "param_1[0x20] = iVar8" (subscript_expression "param_1[0x20]" identifier [ number_literal ]) = identifier) ;) })) (if_statement "if (DAT_00070228 != 2) {\n    puVar5 = (undefined4 *)xmalloc(0x1c4);\n    puVar13 = (undefined4 *)param_1[1];\n    iVar3 = (int)puVar5 - (int)((uint)(puVar5 + 1) & 0xfffffffc);\n    *puVar5 = *puVar13;\n    puVar5[0x70] = puVar13[0x70];\n    puVar13 = (undefined4 *)((int)puVar13 - iVar3);\n    puVar15 = (undefined4 *)((uint)(puVar5 + 1) & 0xfffffffc);\n    for (uVar9 = iVar3 + 0x1c4U >> 2; uVar9 != 0; uVar9 = uVar9 - 1) {\n      *puVar15 = *puVar13;\n      puVar13 = puVar13 + (uint)bVar19 * -2 + 1;\n      puVar15 = puVar15 + (uint)bVar19 * -2 + 1;\n    }\n    param_1[1] = puVar5;\n    puVar5[2] = DAT_00070228;\n  }" if (parenthesized_expression "(DAT_00070228 != 2)" ( (binary_expression "DAT_00070228 != 2" identifier != number_literal) )) (compound_statement "{\n    puVar5 = (undefined4 *)xmalloc(0x1c4);\n    puVar13 = (undefined4 *)param_1[1];\n    iVar3 = (int)puVar5 - (int)((uint)(puVar5 + 1) & 0xfffffffc);\n    *puVar5 = *puVar13;\n    puVar5[0x70] = puVar13[0x70];\n    puVar13 = (undefined4 *)((int)puVar13 - iVar3);\n    puVar15 = (undefined4 *)((uint)(puVar5 + 1) & 0xfffffffc);\n    for (uVar9 = iVar3 + 0x1c4U >> 2; uVar9 != 0; uVar9 = uVar9 - 1) {\n      *puVar15 = *puVar13;\n      puVar13 = puVar13 + (uint)bVar19 * -2 + 1;\n      puVar15 = puVar15 + (uint)bVar19 * -2 + 1;\n    }\n    param_1[1] = puVar5;\n    puVar5[2] = DAT_00070228;\n  }" { (expression_statement "puVar5 = (undefined4 *)xmalloc(0x1c4);" (assignment_expression "puVar5 = (undefined4 *)xmalloc(0x1c4)" identifier = (cast_expression "(undefined4 *)xmalloc(0x1c4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(0x1c4)" identifier (argument_list "(0x1c4)" ( number_literal ))))) ;) (expression_statement "puVar13 = (undefined4 *)param_1[1];" (assignment_expression "puVar13 = (undefined4 *)param_1[1]" identifier = (cast_expression "(undefined4 *)param_1[1]" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[1]" identifier [ number_literal ]))) ;) (expression_statement "iVar3 = (int)puVar5 - (int)((uint)(puVar5 + 1) & 0xfffffffc);" (assignment_expression "iVar3 = (int)puVar5 - (int)((uint)(puVar5 + 1) & 0xfffffffc)" identifier = (binary_expression "(int)puVar5 - (int)((uint)(puVar5 + 1) & 0xfffffffc)" (cast_expression "(int)puVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)((uint)(puVar5 + 1) & 0xfffffffc)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((uint)(puVar5 + 1) & 0xfffffffc)" ( (binary_expression "(uint)(puVar5 + 1) & 0xfffffffc" (call_expression "(uint)(puVar5 + 1)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(puVar5 + 1)" ( (binary_expression "puVar5 + 1" identifier + number_literal) ))) & number_literal) ))))) ;) (expression_statement "*puVar5 = *puVar13;" (assignment_expression "*puVar5 = *puVar13" (pointer_expression "*puVar5" * identifier) = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "puVar5[0x70] = puVar13[0x70];" (assignment_expression "puVar5[0x70] = puVar13[0x70]" (subscript_expression "puVar5[0x70]" identifier [ number_literal ]) = (subscript_expression "puVar13[0x70]" identifier [ number_literal ])) ;) (expression_statement "puVar13 = (undefined4 *)((int)puVar13 - iVar3);" (assignment_expression "puVar13 = (undefined4 *)((int)puVar13 - iVar3)" identifier = (cast_expression "(undefined4 *)((int)puVar13 - iVar3)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar13 - iVar3)" ( (binary_expression "(int)puVar13 - iVar3" (cast_expression "(int)puVar13" ( (type_descriptor "int" primitive_type) ) identifier) - identifier) )))) ;) (expression_statement "puVar15 = (undefined4 *)((uint)(puVar5 + 1) & 0xfffffffc);" (assignment_expression "puVar15 = (undefined4 *)((uint)(puVar5 + 1) & 0xfffffffc)" identifier = (cast_expression "(undefined4 *)((uint)(puVar5 + 1) & 0xfffffffc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)(puVar5 + 1) & 0xfffffffc)" ( (binary_expression "(uint)(puVar5 + 1) & 0xfffffffc" (call_expression "(uint)(puVar5 + 1)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(puVar5 + 1)" ( (binary_expression "puVar5 + 1" identifier + number_literal) ))) & number_literal) )))) ;) (for_statement "for (uVar9 = iVar3 + 0x1c4U >> 2; uVar9 != 0; uVar9 = uVar9 - 1) {\n      *puVar15 = *puVar13;\n      puVar13 = puVar13 + (uint)bVar19 * -2 + 1;\n      puVar15 = puVar15 + (uint)bVar19 * -2 + 1;\n    }" for ( (assignment_expression "uVar9 = iVar3 + 0x1c4U >> 2" identifier = (binary_expression "iVar3 + 0x1c4U >> 2" (binary_expression "iVar3 + 0x1c4U" identifier + number_literal) >> number_literal)) ; (binary_expression "uVar9 != 0" identifier != number_literal) ; (assignment_expression "uVar9 = uVar9 - 1" identifier = (binary_expression "uVar9 - 1" identifier - number_literal)) ) (compound_statement "{\n      *puVar15 = *puVar13;\n      puVar13 = puVar13 + (uint)bVar19 * -2 + 1;\n      puVar15 = puVar15 + (uint)bVar19 * -2 + 1;\n    }" { (expression_statement "*puVar15 = *puVar13;" (assignment_expression "*puVar15 = *puVar13" (pointer_expression "*puVar15" * identifier) = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "puVar13 = puVar13 + (uint)bVar19 * -2 + 1;" (assignment_expression "puVar13 = puVar13 + (uint)bVar19 * -2 + 1" identifier = (binary_expression "puVar13 + (uint)bVar19 * -2 + 1" (binary_expression "puVar13 + (uint)bVar19 * -2" identifier + (binary_expression "(uint)bVar19 * -2" (cast_expression "(uint)bVar19" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "puVar15 = puVar15 + (uint)bVar19 * -2 + 1;" (assignment_expression "puVar15 = puVar15 + (uint)bVar19 * -2 + 1" identifier = (binary_expression "puVar15 + (uint)bVar19 * -2 + 1" (binary_expression "puVar15 + (uint)bVar19 * -2" identifier + (binary_expression "(uint)bVar19 * -2" (cast_expression "(uint)bVar19" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) })) (expression_statement "param_1[1] = puVar5;" (assignment_expression "param_1[1] = puVar5" (subscript_expression "param_1[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar5[2] = DAT_00070228;" (assignment_expression "puVar5[2] = DAT_00070228" (subscript_expression "puVar5[2]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar2 = bfd_get_mach(param_1);" (assignment_expression "uVar2 = bfd_get_mach(param_1)" identifier = (call_expression "bfd_get_mach(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (expression_statement "iVar3 = *(int *)(param_1[1] + 8);" (assignment_expression "iVar3 = *(int *)(param_1[1] + 8)" identifier = (pointer_expression "*(int *)(param_1[1] + 8)" * (cast_expression "(int *)(param_1[1] + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1[1] + 8)" ( (binary_expression "param_1[1] + 8" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) ))))) ;) (expression_statement "uVar7 = bfd_get_arch(param_1);" (assignment_expression "uVar7 = bfd_get_arch(param_1)" identifier = (call_expression "bfd_get_arch(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (expression_statement "local_bc = disassembler(uVar7,iVar3 == 0,uVar2,param_1);" (assignment_expression "local_bc = disassembler(uVar7,iVar3 == 0,uVar2,param_1)" identifier = (call_expression "disassembler(uVar7,iVar3 == 0,uVar2,param_1)" identifier (argument_list "(uVar7,iVar3 == 0,uVar2,param_1)" ( identifier , (binary_expression "iVar3 == 0" identifier == number_literal) , identifier , identifier )))) ;) (if_statement "if (local_bc == 0) {\n    uVar2 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar2,0);\n    uVar7 = dcgettext(0,"can\'t disassemble for architecture %s\n",5);\n    FUN_000451b0(uVar7,uVar2);\n    DAT_00071110 = 1;\n  }\n  else {\n    local_a8 = *(undefined4 *)(param_1[1] + 4);\n    local_a4 = bfd_get_arch(param_1);\n    local_a0 = bfd_get_mach(param_1);\n    local_24 = DAT_00071070;\n    local_44 = bfd_octets_per_byte(param_1);\n    local_40 = 8;\n    local_3c = 3;\n    local_38 = 0;\n    if (*(int *)(param_1[1] + 8) == 0) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (*(int *)(param_1[1] + 8) == 1) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }\n    disassemble_init_for_target(local_b4);\n    iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n    if (iVar3 < 0) {\n      if (DAT_000710f0 != 0) {\nLAB_00017bfe:\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(*param_1);\n      }\n    }\n    else if (iVar3 != 0) {\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }\n    local_84 = DAT_00071064;\n    local_7c = DAT_00071060;\n    bfd_map_over_sections(param_1,FUN_00018770,local_b4);\n    if (local_c4 != (void *)0x0) {\n      free(local_c4);\n    }\n    free(DAT_00071064);\n  }" if (parenthesized_expression "(local_bc == 0)" ( (binary_expression "local_bc == 0" identifier == number_literal) )) (compound_statement "{\n    uVar2 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar2,0);\n    uVar7 = dcgettext(0,"can\'t disassemble for architecture %s\n",5);\n    FUN_000451b0(uVar7,uVar2);\n    DAT_00071110 = 1;\n  }" { (expression_statement "uVar2 = bfd_get_arch(param_1);" (assignment_expression "uVar2 = bfd_get_arch(param_1)" identifier = (call_expression "bfd_get_arch(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (expression_statement "uVar2 = bfd_printable_arch_mach(uVar2,0);" (assignment_expression "uVar2 = bfd_printable_arch_mach(uVar2,0)" identifier = (call_expression "bfd_printable_arch_mach(uVar2,0)" identifier (argument_list "(uVar2,0)" ( identifier , number_literal )))) ;) (expression_statement "uVar7 = dcgettext(0,"can\'t disassemble for architecture %s\n",5);" (assignment_expression "uVar7 = dcgettext(0,"can\'t disassemble for architecture %s\n",5)" identifier = (call_expression "dcgettext(0,"can\'t disassemble for architecture %s\n",5)" identifier (argument_list "(0,"can\'t disassemble for architecture %s\n",5)" ( number_literal , (string_literal ""can\'t disassemble for architecture %s\n"" " string_content escape_sequence string_content escape_sequence ") , number_literal )))) ;) (expression_statement "FUN_000451b0(uVar7,uVar2);" (call_expression "FUN_000451b0(uVar7,uVar2)" identifier (argument_list "(uVar7,uVar2)" ( identifier , identifier ))) ;) (expression_statement "DAT_00071110 = 1;" (assignment_expression "DAT_00071110 = 1" identifier = number_literal) ;) }) (else_clause "else {\n    local_a8 = *(undefined4 *)(param_1[1] + 4);\n    local_a4 = bfd_get_arch(param_1);\n    local_a0 = bfd_get_mach(param_1);\n    local_24 = DAT_00071070;\n    local_44 = bfd_octets_per_byte(param_1);\n    local_40 = 8;\n    local_3c = 3;\n    local_38 = 0;\n    if (*(int *)(param_1[1] + 8) == 0) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (*(int *)(param_1[1] + 8) == 1) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }\n    disassemble_init_for_target(local_b4);\n    iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n    if (iVar3 < 0) {\n      if (DAT_000710f0 != 0) {\nLAB_00017bfe:\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(*param_1);\n      }\n    }\n    else if (iVar3 != 0) {\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }\n    local_84 = DAT_00071064;\n    local_7c = DAT_00071060;\n    bfd_map_over_sections(param_1,FUN_00018770,local_b4);\n    if (local_c4 != (void *)0x0) {\n      free(local_c4);\n    }\n    free(DAT_00071064);\n  }" else (compound_statement "{\n    local_a8 = *(undefined4 *)(param_1[1] + 4);\n    local_a4 = bfd_get_arch(param_1);\n    local_a0 = bfd_get_mach(param_1);\n    local_24 = DAT_00071070;\n    local_44 = bfd_octets_per_byte(param_1);\n    local_40 = 8;\n    local_3c = 3;\n    local_38 = 0;\n    if (*(int *)(param_1[1] + 8) == 0) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (*(int *)(param_1[1] + 8) == 1) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }\n    disassemble_init_for_target(local_b4);\n    iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n    if (iVar3 < 0) {\n      if (DAT_000710f0 != 0) {\nLAB_00017bfe:\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(*param_1);\n      }\n    }\n    else if (iVar3 != 0) {\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }\n    local_84 = DAT_00071064;\n    local_7c = DAT_00071060;\n    bfd_map_over_sections(param_1,FUN_00018770,local_b4);\n    if (local_c4 != (void *)0x0) {\n      free(local_c4);\n    }\n    free(DAT_00071064);\n  }" { (expression_statement "local_a8 = *(undefined4 *)(param_1[1] + 4);" (assignment_expression "local_a8 = *(undefined4 *)(param_1[1] + 4)" identifier = (pointer_expression "*(undefined4 *)(param_1[1] + 4)" * (cast_expression "(undefined4 *)(param_1[1] + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1[1] + 4)" ( (binary_expression "param_1[1] + 4" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) ))))) ;) (expression_statement "local_a4 = bfd_get_arch(param_1);" (assignment_expression "local_a4 = bfd_get_arch(param_1)" identifier = (call_expression "bfd_get_arch(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (expression_statement "local_a0 = bfd_get_mach(param_1);" (assignment_expression "local_a0 = bfd_get_mach(param_1)" identifier = (call_expression "bfd_get_mach(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (expression_statement "local_24 = DAT_00071070;" (assignment_expression "local_24 = DAT_00071070" identifier = identifier) ;) (expression_statement "local_44 = bfd_octets_per_byte(param_1);" (assignment_expression "local_44 = bfd_octets_per_byte(param_1)" identifier = (call_expression "bfd_octets_per_byte(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (expression_statement "local_40 = 8;" (assignment_expression "local_40 = 8" identifier = number_literal) ;) (expression_statement "local_3c = 3;" (assignment_expression "local_3c = 3" identifier = number_literal) ;) (expression_statement "local_38 = 0;" (assignment_expression "local_38 = 0" identifier = number_literal) ;) (if_statement "if (*(int *)(param_1[1] + 8) == 0) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (*(int *)(param_1[1] + 8) == 1) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }" if (parenthesized_expression "(*(int *)(param_1[1] + 8) == 0)" ( (binary_expression "*(int *)(param_1[1] + 8) == 0" (pointer_expression "*(int *)(param_1[1] + 8)" * (cast_expression "(int *)(param_1[1] + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1[1] + 8)" ( (binary_expression "param_1[1] + 8" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) )))) == number_literal) )) (compound_statement "{\n      local_9c = 0;\n      local_48 = 0;\n    }" { (expression_statement "local_9c = 0;" (assignment_expression "local_9c = 0" identifier = number_literal) ;) (expression_statement "local_48 = 0;" (assignment_expression "local_48 = 0" identifier = number_literal) ;) }) (else_clause "else if (*(int *)(param_1[1] + 8) == 1) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }" else (if_statement "if (*(int *)(param_1[1] + 8) == 1) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }" if (parenthesized_expression "(*(int *)(param_1[1] + 8) == 1)" ( (binary_expression "*(int *)(param_1[1] + 8) == 1" (pointer_expression "*(int *)(param_1[1] + 8)" * (cast_expression "(int *)(param_1[1] + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1[1] + 8)" ( (binary_expression "param_1[1] + 8" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) )))) == number_literal) )) (compound_statement "{\n      local_9c = 1;\n      local_48 = 1;\n    }" { (expression_statement "local_9c = 1;" (assignment_expression "local_9c = 1" identifier = number_literal) ;) (expression_statement "local_48 = 1;" (assignment_expression "local_48 = 1" identifier = number_literal) ;) }) (else_clause "else {\n      local_9c = 2;\n    }" else (compound_statement "{\n      local_9c = 2;\n    }" { (expression_statement "local_9c = 2;" (assignment_expression "local_9c = 2" identifier = number_literal) ;) }))))) (expression_statement "disassemble_init_for_target(local_b4);" (call_expression "disassemble_init_for_target(local_b4)" identifier (argument_list "(local_b4)" ( identifier ))) ;) (expression_statement "iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);" (assignment_expression "iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1)" identifier = (call_expression "(**(code **)(param_1[1] + 0x1b4))(param_1)" (parenthesized_expression "(**(code **)(param_1[1] + 0x1b4))" ( (pointer_expression "**(code **)(param_1[1] + 0x1b4)" * (pointer_expression "*(code **)(param_1[1] + 0x1b4)" * (cast_expression "(code **)(param_1[1] + 0x1b4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1[1] + 0x1b4)" ( (binary_expression "param_1[1] + 0x1b4" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) ))))) )) (argument_list "(param_1)" ( identifier )))) ;) (if_statement "if (iVar3 < 0) {\n      if (DAT_000710f0 != 0) {\nLAB_00017bfe:\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(*param_1);\n      }\n    }\n    else if (iVar3 != 0) {\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }" if (parenthesized_expression "(iVar3 < 0)" ( (binary_expression "iVar3 < 0" identifier < number_literal) )) (compound_statement "{\n      if (DAT_000710f0 != 0) {\nLAB_00017bfe:\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(*param_1);\n      }\n    }" { (if_statement "if (DAT_000710f0 != 0) {\nLAB_00017bfe:\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(*param_1);\n      }" if (parenthesized_expression "(DAT_000710f0 != 0)" ( (binary_expression "DAT_000710f0 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_00017bfe:\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(*param_1);\n      }" { (labeled_statement "LAB_00017bfe:\n                    /* WARNING: Subroutine does not return */\n        FUN_000450f0(*param_1);" statement_identifier : comment (expression_statement "FUN_000450f0(*param_1);" (call_expression "FUN_000450f0(*param_1)" identifier (argument_list "(*param_1)" ( (pointer_expression "*param_1" * identifier) ))) ;)) })) }) (else_clause "else if (iVar3 != 0) {\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }" else (if_statement "if (iVar3 != 0) {\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }" { (expression_statement "local_c4 = (void *)xmalloc(iVar3);" (assignment_expression "local_c4 = (void *)xmalloc(iVar3)" identifier = (cast_expression "(void *)xmalloc(iVar3)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(iVar3)" identifier (argument_list "(iVar3)" ( identifier ))))) ;) (expression_statement "local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);" (assignment_expression "local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c)" identifier = (call_expression "(**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c)" (parenthesized_expression "(**(code **)(param_1[1] + 0x1b8))" ( (pointer_expression "**(code **)(param_1[1] + 0x1b8)" * (pointer_expression "*(code **)(param_1[1] + 0x1b8)" * (cast_expression "(code **)(param_1[1] + 0x1b8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1[1] + 0x1b8)" ( (binary_expression "param_1[1] + 0x1b8" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) ))))) )) (argument_list "(param_1,local_c4,DAT_0007105c)" ( identifier , identifier , identifier )))) ;) (if_statement "if ((int)local_c0 < 0) goto LAB_00017bfe;" if (parenthesized_expression "((int)local_c0 < 0)" ( (binary_expression "(int)local_c0 < 0" (cast_expression "(int)local_c0" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (goto_statement "goto LAB_00017bfe;" goto statement_identifier ;)) (expression_statement "qsort(local_c4,local_c0,4,FUN_000144e0);" (call_expression "qsort(local_c4,local_c0,4,FUN_000144e0)" identifier (argument_list "(local_c4,local_c0,4,FUN_000144e0)" ( identifier , identifier , number_literal , identifier ))) ;) })))) (expression_statement "local_84 = DAT_00071064;" (assignment_expression "local_84 = DAT_00071064" identifier = identifier) ;) (expression_statement "local_7c = DAT_00071060;" (assignment_expression "local_7c = DAT_00071060" identifier = identifier) ;) (expression_statement "bfd_map_over_sections(param_1,FUN_00018770,local_b4);" (call_expression "bfd_map_over_sections(param_1,FUN_00018770,local_b4)" identifier (argument_list "(param_1,FUN_00018770,local_b4)" ( identifier , identifier , identifier ))) ;) (if_statement "if (local_c4 != (void *)0x0) {\n      free(local_c4);\n    }" if (parenthesized_expression "(local_c4 != (void *)0x0)" ( (binary_expression "local_c4 != (void *)0x0" identifier != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      free(local_c4);\n    }" { (expression_statement "free(local_c4);" (call_expression "free(local_c4)" identifier (argument_list "(local_c4)" ( identifier ))) ;) })) (expression_statement "free(DAT_00071064);" (call_expression "free(DAT_00071064)" identifier (argument_list "(DAT_00071064)" ( identifier ))) ;) }))) (labeled_statement "joined_r0x0001721a:\n  if (DAT_000710ac != 0) {\n    iVar3 = FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1);\n    if (iVar3 == 0) {\n      if (DAT_000710d0 == 0) {\n        FUN_00034950();\n        FUN_00015f30();\n      }\n    }\n    else {\n      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);\n      if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }\n    }\n  }" statement_identifier : (if_statement "if (DAT_000710ac != 0) {\n    iVar3 = FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1);\n    if (iVar3 == 0) {\n      if (DAT_000710d0 == 0) {\n        FUN_00034950();\n        FUN_00015f30();\n      }\n    }\n    else {\n      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);\n      if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }\n    }\n  }" if (parenthesized_expression "(DAT_000710ac != 0)" ( (binary_expression "DAT_000710ac != 0" identifier != number_literal) )) (compound_statement "{\n    iVar3 = FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1);\n    if (iVar3 == 0) {\n      if (DAT_000710d0 == 0) {\n        FUN_00034950();\n        FUN_00015f30();\n      }\n    }\n    else {\n      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);\n      if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }\n    }\n  }" { (expression_statement "iVar3 = FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1);" (assignment_expression "iVar3 = FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1)" identifier = (call_expression "FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1)" identifier (argument_list "(param_1,DAT_0007106c,DAT_00071068,1)" ( identifier , identifier , identifier , number_literal )))) ;) (if_statement "if (iVar3 == 0) {\n      if (DAT_000710d0 == 0) {\n        FUN_00034950();\n        FUN_00015f30();\n      }\n    }\n    else {\n      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);\n      if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }\n    }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n      if (DAT_000710d0 == 0) {\n        FUN_00034950();\n        FUN_00015f30();\n      }\n    }" { (if_statement "if (DAT_000710d0 == 0) {\n        FUN_00034950();\n        FUN_00015f30();\n      }" if (parenthesized_expression "(DAT_000710d0 == 0)" ( (binary_expression "DAT_000710d0 == 0" identifier == number_literal) )) (compound_statement "{\n        FUN_00034950();\n        FUN_00015f30();\n      }" { (expression_statement "FUN_00034950();" (call_expression "FUN_00034950()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_00015f30();" (call_expression "FUN_00015f30()" identifier (argument_list "()" ( ))) ;) })) }) (else_clause "else {\n      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);\n      if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }\n    }" else (compound_statement "{\n      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);\n      if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }\n    }" { (expression_statement "iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);" (assignment_expression "iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0)" identifier = (call_expression "FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0)" identifier (argument_list "(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0)" ( (pointer_expression "*(undefined4 *)PTR_stdout_0006ffdc" * (cast_expression "(undefined4 *)PTR_stdout_0006ffdc" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , identifier , identifier , identifier , identifier , (binary_expression "DAT_000710a8 != 0" identifier != number_literal) )))) ;) (if_statement "if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }" { (expression_statement "uVar2 = *param_1;" (assignment_expression "uVar2 = *param_1" identifier = (pointer_expression "*param_1" * identifier)) ;) (expression_statement "uVar7 = dcgettext(0,"%s: printing debugging information failed",5);" (assignment_expression "uVar7 = dcgettext(0,"%s: printing debugging information failed",5)" identifier = (call_expression "dcgettext(0,"%s: printing debugging information failed",5)" identifier (argument_list "(0,"%s: printing debugging information failed",5)" ( number_literal , (string_literal ""%s: printing debugging information failed"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_000451b0(uVar7,uVar2);" (call_expression "FUN_000451b0(uVar7,uVar2)" identifier (argument_list "(uVar7,uVar2)" ( identifier , identifier ))) ;) (expression_statement "DAT_00071110 = 1;" (assignment_expression "DAT_00071110 = 1" identifier = number_literal) ;) })) }))) }))) (if_statement "if (DAT_0007106c != (void *)0x0) {\n    free(DAT_0007106c);\n    DAT_0007106c = (void *)0x0;\n  }" if (parenthesized_expression "(DAT_0007106c != (void *)0x0)" ( (binary_expression "DAT_0007106c != (void *)0x0" identifier != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    free(DAT_0007106c);\n    DAT_0007106c = (void *)0x0;\n  }" { (expression_statement "free(DAT_0007106c);" (call_expression "free(DAT_0007106c)" identifier (argument_list "(DAT_0007106c)" ( identifier ))) ;) (expression_statement "DAT_0007106c = (void *)0x0;" (assignment_expression "DAT_0007106c = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (if_statement "if (DAT_0007105c != (void *)0x0) {\n    free(DAT_0007105c);\n    DAT_0007105c = (void *)0x0;\n  }" if (parenthesized_expression "(DAT_0007105c != (void *)0x0)" ( (binary_expression "DAT_0007105c != (void *)0x0" identifier != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    free(DAT_0007105c);\n    DAT_0007105c = (void *)0x0;\n  }" { (expression_statement "free(DAT_0007105c);" (call_expression "free(DAT_0007105c)" identifier (argument_list "(DAT_0007105c)" ( identifier ))) ;) (expression_statement "DAT_0007105c = (void *)0x0;" (assignment_expression "DAT_0007105c = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (if_statement "if (DAT_00071058 != (void *)0x0) {\n    free(DAT_00071058);\n    DAT_00071058 = (void *)0x0;\n  }" if (parenthesized_expression "(DAT_00071058 != (void *)0x0)" ( (binary_expression "DAT_00071058 != (void *)0x0" identifier != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    free(DAT_00071058);\n    DAT_00071058 = (void *)0x0;\n  }" { (expression_statement "free(DAT_00071058);" (call_expression "free(DAT_00071058)" identifier (argument_list "(DAT_00071058)" ( identifier ))) ;) (expression_statement "DAT_00071058 = (void *)0x0;" (assignment_expression "DAT_00071058 = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (expression_statement "DAT_00071068 = 0;" (assignment_expression "DAT_00071068 = 0" identifier = number_literal) ;) (expression_statement "DAT_00071050 = 0;" (assignment_expression "DAT_00071050 = 0" identifier = number_literal) ;) (expression_statement "DAT_00071054 = 0;" (assignment_expression "DAT_00071054 = 0" identifier = number_literal) ;) (return_statement "return;" return ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n/* WARNING: Type propagation algorithm not settling */\n\nvoid __regparm3 dump_bfd(bfd *abfd)\n\n{\n  bfd_target *pbVar1;\n  bfd_endian bVar2;\n  char *pcVar3;\n  long lVar4;\n  asymbol **__dest;\n  bfd_section *pbVar5;\n  asymbol *paVar6;\n  bfd_arch_info *pbVar7;\n  bfd_target *pbVar8;\n  undefined4 uVar9;\n  undefined4 uVar10;\n  void *dhandle;\n  bfd_boolean bVar11;\n  char *__format;\n  arelent **relpp;\n  char *pcVar12;\n  int iVar13;\n  uint uVar14;\n  uint in_EDX;\n  uint extraout_EDX;\n  uint extraout_EDX_00;\n  uint extraout_EDX_01;\n  uint extraout_EDX_02;\n  uint extraout_EDX_03;\n  uint extraout_EDX_04;\n  uint extraout_EDX_05;\n  undefined4 extraout_EDX_06;\n  uint extraout_EDX_07;\n  asymbol **ppaVar15;\n  byte *pbVar16;\n  byte *pbVar17;\n  undefined4 *puVar18;\n  byte *pbVar19;\n  undefined4 *puVar20;\n  bool bVar21;\n  bool bVar22;\n  bool bVar23;\n  byte bVar24;\n  ulonglong uVar25;\n  longlong lVar26;\n  asymbol **local_f0;\n  asymbol **local_ec;\n  int local_e8;\n  objdump_disasm_info aux;\n  bfd_boolean has_reloc;\n  objdump_disasm_info *local_ac;\n  bfd_flavour local_a8;\n  undefined4 local_a4;\n  undefined4 local_a0;\n  undefined4 local_9c;\n  asymbol **local_84;\n  long local_7c;\n  code *local_68;\n  code *local_64;\n  undefined4 local_48;\n  undefined4 local_44;\n  undefined4 local_40;\n  undefined4 local_3c;\n  undefined4 local_38;\n  char *local_24;\n  undefined4 uStack_14;\n  \n  bVar24 = 0;\n  uStack_14 = 0x16fdb;\n  if (adjust_section_vma == 0) {\n    if (dump_debugging_tags == 0 && suppress_bfd_header == 0) {\nLAB_00017807:\n      pcVar3 = abfd->filename;\n      pcVar12 = abfd->xvec->name;\n      __format = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(__format,pcVar3,pcVar12);\n      in_EDX = extraout_EDX_03;\n    }\n  }\n  else {\n    has_reloc = *(uint *)&abfd->field_0x28 >> 5 & 1;\n    bfd_map_over_sections(abfd,adjust_addresses,&has_reloc);\n    in_EDX = extraout_EDX_02;\n    if (dump_debugging_tags == 0 && suppress_bfd_header == 0) goto LAB_00017807;\n  }\n  if (dump_ar_hdrs != 0) {\n    print_arelt_descr(*(FILE **)PTR_stdout_0006ffdc,abfd,1,0);\n    in_EDX = extraout_EDX_04;\n  }\n  if (dump_file_header != 0) {\n    uVar9 = bfd_get_mach(abfd);\n    uVar10 = bfd_get_arch(abfd);\n    uVar9 = bfd_printable_arch_mach(uVar10,uVar9);\n    pcVar3 = (char *)dcgettext(0,"architecture: %s, ",5);\n    printf(pcVar3,uVar9);\n    uVar14 = *(uint *)&abfd->field_0x28;\n    pcVar3 = (char *)dcgettext(0,"flags 0x%08x:\n",5);\n    printf(pcVar3,uVar14 >> 5 & 0x3ff);\n    pcVar3 = "";\n    uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    if ((uVar14 & 1) != 0) {\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 2) != 0) {\n      printf("%s%s",pcVar3,"EXEC_P");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 4) != 0) {\n      printf("%s%s",pcVar3,"HAS_LINENO");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 8) != 0) {\n      printf("%s%s",pcVar3,"HAS_DEBUG");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x10) != 0) {\n      printf("%s%s",pcVar3,"HAS_SYMS");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x20) != 0) {\n      printf("%s%s",pcVar3,"HAS_LOCALS");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x40) != 0) {\n      printf("%s%s",pcVar3,"DYNAMIC");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x80) != 0) {\n      printf("%s%s",pcVar3,"WP_TEXT");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x100) != 0) {\n      printf("%s%s",pcVar3,"D_PAGED");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x200) != 0) {\n      printf("%s%s",pcVar3,"BFD_IS_RELAXABLE");\n    }\n    pcVar3 = (char *)dcgettext(0,"\nstart address 0x",5);\n    printf(pcVar3);\n    bfd_fprintf_vma(abfd,*(undefined4 *)PTR_stdout_0006ffdc,abfd->start_address);\n    putchar(10);\n    in_EDX = extraout_EDX_05;\n  }\n  if (dump_private_headers != 0) {\n    (*abfd->xvec->_bfd_print_private_bfd_data)(abfd,*(void **)PTR_stdout_0006ffdc);\n    in_EDX = extraout_EDX_00;\n  }\n  if (dump_private_options != (char *)0x0) {\n    pcVar3 = (char *)dcgettext(0,"option -P/--private not supported by this file",5);\n    non_fatal(pcVar3);\n    in_EDX = extraout_EDX;\n  }\n  if (dump_debugging_tags == 0 && suppress_bfd_header == 0) {\n    putc(10,*(FILE **)PTR_stdout_0006ffdc);\n    in_EDX = extraout_EDX_07;\n  }\n  uVar25 = CONCAT44(in_EDX,symcount);\n  ppaVar15 = syms;\n  if ((((dump_symtab != 0 || dump_reloc_info != 0) || disassemble != 0) || dump_debugging != 0) ||\n      dump_dwarf_section_info != 0) {\n    if ((abfd->field_0x29 & 2) == 0) {\n      uVar25 = (ulonglong)in_EDX << 0x20;\n      ppaVar15 = (asymbol **)0x0;\n    }\n    else {\n      lVar4 = (*abfd->xvec->_bfd_get_symtab_upper_bound)(abfd);\n      if (lVar4 < 0) {\n        pcVar3 = abfd->filename;\n        pcVar12 = (char *)dcgettext(0,"failed to read symbol table from: %s",5,lVar4);\n        non_fatal(pcVar12,pcVar3);\n        pcVar3 = (char *)dcgettext(0,"error message was",5);\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(pcVar3);\n      }\n      ppaVar15 = (bfd_symbol **)0x0;\n      if (lVar4 != 0) {\n        ppaVar15 = (asymbol **)xmalloc(lVar4);\n      }\n      uVar25 = (ulonglong)(*abfd->xvec->_bfd_canonicalize_symtab)(abfd,ppaVar15);\n      symcount = (long)uVar25;\n      if (symcount < 0) goto LAB_00017bfe;\n    }\n  }\n  syms = ppaVar15;\n  symcount = (long)uVar25;\n  if (dump_section_headers != 0) {\n    has_reloc = 0xd;\n    pcVar3 = (char *)dcgettext(0,"Sections:\n",5);\n    printf(pcVar3);\n    if (wide_output != 0) {\n      bfd_map_over_sections(abfd,find_longest_section_name,&has_reloc);\n    }\n    bVar11 = has_reloc;\n    pcVar3 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);\n    printf(pcVar3,bVar11,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);\n    if (wide_output != 0) {\n      pcVar3 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar3);\n    }\n    putchar(10);\n    bfd_map_over_sections(abfd,dump_section_header,&has_reloc);\n    uVar25 = CONCAT44(extraout_EDX_06,symcount);\n  }\n  symcount = (long)uVar25;\n  if (dump_dynamic_symtab == 0 && dump_dynamic_reloc_info == 0) {\n    if (disassemble != 0) {\n      lVar4 = (*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound)(abfd);\n      lVar26 = CONCAT44((int)((ulonglong)lVar4 >> 0x20),dynsymcount);\n      ppaVar15 = dynsyms;\n      if (0 < (int)lVar4) goto LAB_000170fd;\n      goto LAB_00017145;\n    }\n  }\n  else {\nLAB_000170fd:\n    lVar4 = (*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound)(abfd);\n    if (lVar4 < 0) {\n      pcVar3 = abfd->filename;\n      if ((abfd->field_0x29 & 8) != 0) {\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(pcVar3);\n      }\n      pcVar12 = (char *)dcgettext(0,"%s: not a dynamic object",5);\n      non_fatal(pcVar12,pcVar3);\n      exit_status = 1;\n      lVar26 = (ulonglong)extraout_EDX_01 << 0x20;\n      ppaVar15 = (asymbol **)0x0;\n    }\n    else {\n      ppaVar15 = (bfd_symbol **)0x0;\n      if (lVar4 != 0) {\n        ppaVar15 = (asymbol **)xmalloc(lVar4);\n      }\n      lVar26 = (longlong)(*abfd->xvec->_bfd_canonicalize_dynamic_symtab)(abfd,ppaVar15);\n      dynsymcount = (long)lVar26;\n      if (dynsymcount < 0) goto LAB_00017bfe;\n    }\nLAB_00017145:\n    dynsyms = ppaVar15;\n    dynsymcount = (long)lVar26;\n    uVar25 = CONCAT44((int)((ulonglong)lVar26 >> 0x20),symcount);\n    if (disassemble != 0) {\n      synthcount = (*abfd->xvec->_bfd_get_synthetic_symtab)\n                             (abfd,symcount,syms,dynsymcount,dynsyms,&synthsyms);\n      uVar25 = (ulonglong)(uint)symcount;\n      if (synthcount < 0) {\n        synthcount = 0;\n        uVar25 = (ulonglong)(uint)symcount;\n      }\n    }\n  }\n  symcount = (long)uVar25;\n  if (dump_symtab != 0) {\n    dump_symbols((bfd *)0x0,(bfd_boolean)(uVar25 >> 0x20));\n  }\n  if (dump_dynamic_symtab != 0) {\n    dump_symbols((bfd *)0x1,dump_dynamic_symtab);\n  }\n  if (dump_dwarf_section_info != 0) {\n    dump_dwarf(abfd);\n  }\n  if (dump_stab_section_info != 0) {\n    dump_stabs_section(abfd,".stab",".stabstr");\n    dump_stabs_section(abfd,".stab.excl",".stab.exclstr");\n    dump_stabs_section(abfd,".stab.index",".stab.indexstr");\n    dump_stabs_section(abfd,"LC_SYMTAB.stabs","LC_SYMTAB.stabstr");\n    dump_stabs_section(abfd,"$GDB_SYMBOLS$","$GDB_STRINGS$");\n  }\n  if (dump_reloc_info == 0) {\nLAB_00017355:\n    if (dump_dynamic_reloc_info != 0) {\n      if (disassemble != 0) goto LAB_00017371;\n      lVar4 = (*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound)(abfd);\n      if (lVar4 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (lVar4 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        relpp = (arelent **)xmalloc(lVar4);\n        lVar4 = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,relpp,dynsyms);\n        if (lVar4 < 0) goto LAB_00017bfe;\n        if (lVar4 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          dump_reloc_set(abfd,(asection *)0x0,relpp,lVar4);\n          puts("\n");\n        }\n        free(relpp);\n      }\n    }\nLAB_000171f0:\n    if (dump_section_contents != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(abfd,dump_section,0);\n    }\n    if (disassemble == 0) goto joined_r0x0001721a;\n  }\n  else {\n    if (disassemble == 0) {\n      bfd_map_over_sections(abfd,dump_relocs_in_section,0);\n      goto LAB_00017355;\n    }\n    if (dump_dynamic_reloc_info == 0) goto LAB_000171f0;\nLAB_00017371:\n    if (dump_section_contents != 0) goto LAB_00017ac0;\n  }\n  print_files = (print_file_list *)0x0;\n  prev_functionname = (char *)0x0;\n  prev_line = 0xffffffff;\n  sorted_symcount = symcount;\n  if (symcount == 0) {\n    sorted_symcount = dynsymcount;\n  }\n  prev_discriminator = 0;\n  __dest = (asymbol **)xmalloc((sorted_symcount + synthcount) * 4);\n  local_e8 = sorted_symcount;\n  ppaVar15 = syms;\n  if (symcount == 0) {\n    ppaVar15 = dynsyms;\n  }\n  sorted_syms = __dest;\n  memcpy(__dest,ppaVar15,sorted_symcount << 2);\n  pbVar5 = (bfd_section *)(PTR__bfd_std_section_0006ffd8 + 0xa8);\n  local_f0 = __dest;\n  local_ec = __dest;\nLAB_00017428:\n  local_e8 = local_e8 + -1;\n  if (-1 < local_e8) {\n    while( true ) {\n      ppaVar15 = local_f0 + 1;\n      paVar6 = *local_f0;\n      pbVar17 = (byte *)paVar6->name;\n      local_f0 = ppaVar15;\n      if ((pbVar17 == (byte *)0x0) || (*pbVar17 == 0)) break;\n      bVar21 = false;\n      bVar23 = (paVar6->flags & 0x104) == 0;\n      if (!bVar23) {\n        iVar13 = 4;\n        pbVar16 = pbVar17;\n        pbVar19 = &DAT_0004c8bd;\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          bVar21 = *pbVar16 < *pbVar19;\n          bVar23 = *pbVar16 == *pbVar19;\n          pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1;\n          pbVar19 = pbVar19 + (uint)bVar24 * -2 + 1;\n        } while (bVar23);\n        bVar22 = false;\n        bVar21 = (!bVar21 && !bVar23) == bVar21;\n        if (!bVar21) {\n          iVar13 = 5;\n          pbVar16 = &DAT_0004c8c2;\n          do {\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar22 = *pbVar17 < *pbVar16;\n            bVar21 = *pbVar17 == *pbVar16;\n            pbVar17 = pbVar17 + (uint)bVar24 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1;\n          } while (bVar21);\n          if ((!bVar22 && !bVar21) != bVar22) break;\n        }\n      }\n      if ((paVar6->section == pbVar5) || ((paVar6->section->flags & 0x1000) != 0)) break;\n      *local_ec = paVar6;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }\n    goto LAB_00017428;\n  }\nLAB_000174ab:\n  sorted_symcount = (int)local_ec - (int)__dest >> 2;\n  if (0 < synthcount) {\n    sorted_symcount = sorted_symcount + synthcount;\n    paVar6 = synthsyms;\n    do {\n      *local_ec = paVar6;\n      local_ec = local_ec + 1;\n      paVar6 = paVar6 + 1;\n    } while (__dest + sorted_symcount != local_ec);\n  }\n  qsort(__dest,sorted_symcount,4,compare_symbols);\n  init_disassemble_info(&has_reloc,*(undefined4 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0);\n  local_ac = &aux;\n  local_68 = objdump_print_address;\n  local_64 = objdump_symbol_at_address;\n  aux.require_sec = 0;\n  aux.dynrelbuf = (arelent **)0x0;\n  aux.dynrelcount = 0;\n  aux.reloc = (arelent *)0x0;\n  aux.abfd = abfd;\n  if (machine != (char *)0x0) {\n    pbVar7 = (bfd_arch_info *)bfd_scan_arch(machine);\n    pcVar3 = machine;\n    if (pbVar7 == (bfd_arch_info *)0x0) {\n      pcVar12 = (char *)dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    /* WARNING: Subroutine does not return */\n      fatal(pcVar12,pcVar3);\n    }\n    abfd->arch_info = pbVar7;\n  }\n  if (endian != BFD_ENDIAN_UNKNOWN) {\n    pbVar8 = (bfd_target *)xmalloc(0x1c4);\n    pbVar1 = abfd->xvec;\n    puVar20 = (undefined4 *)((uint)&pbVar8->flavour & 0xfffffffc);\n    iVar13 = (int)pbVar8 - (int)puVar20;\n    pbVar8->name = pbVar1->name;\n    pbVar8->backend_data = pbVar1->backend_data;\n    puVar18 = (undefined4 *)((int)pbVar1 - iVar13);\n    for (uVar14 = iVar13 + 0x1c4U >> 2; uVar14 != 0; uVar14 = uVar14 - 1) {\n      *puVar20 = *puVar18;\n      puVar18 = puVar18 + (uint)bVar24 * -2 + 1;\n      puVar20 = puVar20 + (uint)bVar24 * -2 + 1;\n    }\n    abfd->xvec = pbVar8;\n    pbVar8->byteorder = endian;\n  }\n  uVar9 = bfd_get_mach(abfd);\n  bVar2 = abfd->xvec->byteorder;\n  uVar10 = bfd_get_arch(abfd);\n  aux.disassemble_fn = (disassembler_ftype)disassembler(uVar10,bVar2 == BFD_ENDIAN_BIG,uVar9,abfd);\n  if (aux.disassemble_fn == (disassembler_ftype)0x0) {\n    uVar9 = bfd_get_arch(abfd);\n    uVar9 = bfd_printable_arch_mach(uVar9,0);\n    pcVar3 = (char *)dcgettext(0,"can\'t disassemble for architecture %s\n",5);\n    non_fatal(pcVar3,uVar9);\n    exit_status = 1;\n  }\n  else {\n    local_a8 = abfd->xvec->flavour;\n    local_a4 = bfd_get_arch(abfd);\n    local_a0 = bfd_get_mach(abfd);\n    local_24 = disassembler_options;\n    local_44 = bfd_octets_per_byte(abfd);\n    local_40 = 8;\n    local_3c = 3;\n    local_38 = 0;\n    bVar2 = abfd->xvec->byteorder;\n    if (bVar2 == BFD_ENDIAN_BIG) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (bVar2 == BFD_ENDIAN_LITTLE) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }\n    disassemble_init_for_target(&has_reloc);\n    lVar4 = (*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound)(abfd);\n    if (lVar4 < 0) {\n      if (dump_dynamic_reloc_info != 0) {\nLAB_00017bfe:\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(abfd->filename);\n      }\n    }\n    else if (lVar4 != 0) {\n      aux.dynrelbuf = (arelent **)xmalloc(lVar4);\n      aux.dynrelcount = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,aux.dynrelbuf,dynsyms);\n      if (aux.dynrelcount < 0) goto LAB_00017bfe;\n      qsort(aux.dynrelbuf,aux.dynrelcount,4,compare_relocs);\n    }\n    local_84 = sorted_syms;\n    local_7c = sorted_symcount;\n    bfd_map_over_sections(abfd,disassemble_section,&has_reloc);\n    if (aux.dynrelbuf != (arelent **)0x0) {\n      free(aux.dynrelbuf);\n    }\n    free(sorted_syms);\n  }\njoined_r0x0001721a:\n  if (dump_debugging != 0) {\n    dhandle = read_debugging_info(abfd,syms,symcount,1);\n    if (dhandle == (void *)0x0) {\n      if (dump_dwarf_section_info == 0) {\n        dwarf_select_sections_all();\n        dump_dwarf(abfd);\n      }\n    }\n    else {\n      bVar11 = print_debugging_info\n                         (*(FILE **)PTR_stdout_0006ffdc,dhandle,abfd,syms,\n                          (_func_char_ptr_bfd_ptr_char_ptr_int *)PTR_bfd_demangle_0006ffe4,\n                          (uint)(dump_debugging_tags != 0));\n      if (bVar11 == 0) {\n        pcVar3 = abfd->filename;\n        pcVar12 = (char *)dcgettext(0,"%s: printing debugging information failed",5);\n        non_fatal(pcVar12,pcVar3);\n        exit_status = 1;\n      }\n    }\n  }\n  if (syms != (asymbol **)0x0) {\n    free(syms);\n    syms = (asymbol **)0x0;\n  }\n  if (dynsyms != (asymbol **)0x0) {\n    free(dynsyms);\n    dynsyms = (asymbol **)0x0;\n  }\n  if (synthsyms != (asymbol *)0x0) {\n    free(synthsyms);\n    synthsyms = (asymbol *)0x0;\n  }\n  symcount = 0;\n  dynsymcount = 0;\n  synthcount = 0;\n  return;\n}\n\n" comment comment (function_definition "void __regparm3 dump_bfd(bfd *abfd)\n\n{\n  bfd_target *pbVar1;\n  bfd_endian bVar2;\n  char *pcVar3;\n  long lVar4;\n  asymbol **__dest;\n  bfd_section *pbVar5;\n  asymbol *paVar6;\n  bfd_arch_info *pbVar7;\n  bfd_target *pbVar8;\n  undefined4 uVar9;\n  undefined4 uVar10;\n  void *dhandle;\n  bfd_boolean bVar11;\n  char *__format;\n  arelent **relpp;\n  char *pcVar12;\n  int iVar13;\n  uint uVar14;\n  uint in_EDX;\n  uint extraout_EDX;\n  uint extraout_EDX_00;\n  uint extraout_EDX_01;\n  uint extraout_EDX_02;\n  uint extraout_EDX_03;\n  uint extraout_EDX_04;\n  uint extraout_EDX_05;\n  undefined4 extraout_EDX_06;\n  uint extraout_EDX_07;\n  asymbol **ppaVar15;\n  byte *pbVar16;\n  byte *pbVar17;\n  undefined4 *puVar18;\n  byte *pbVar19;\n  undefined4 *puVar20;\n  bool bVar21;\n  bool bVar22;\n  bool bVar23;\n  byte bVar24;\n  ulonglong uVar25;\n  longlong lVar26;\n  asymbol **local_f0;\n  asymbol **local_ec;\n  int local_e8;\n  objdump_disasm_info aux;\n  bfd_boolean has_reloc;\n  objdump_disasm_info *local_ac;\n  bfd_flavour local_a8;\n  undefined4 local_a4;\n  undefined4 local_a0;\n  undefined4 local_9c;\n  asymbol **local_84;\n  long local_7c;\n  code *local_68;\n  code *local_64;\n  undefined4 local_48;\n  undefined4 local_44;\n  undefined4 local_40;\n  undefined4 local_3c;\n  undefined4 local_38;\n  char *local_24;\n  undefined4 uStack_14;\n  \n  bVar24 = 0;\n  uStack_14 = 0x16fdb;\n  if (adjust_section_vma == 0) {\n    if (dump_debugging_tags == 0 && suppress_bfd_header == 0) {\nLAB_00017807:\n      pcVar3 = abfd->filename;\n      pcVar12 = abfd->xvec->name;\n      __format = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(__format,pcVar3,pcVar12);\n      in_EDX = extraout_EDX_03;\n    }\n  }\n  else {\n    has_reloc = *(uint *)&abfd->field_0x28 >> 5 & 1;\n    bfd_map_over_sections(abfd,adjust_addresses,&has_reloc);\n    in_EDX = extraout_EDX_02;\n    if (dump_debugging_tags == 0 && suppress_bfd_header == 0) goto LAB_00017807;\n  }\n  if (dump_ar_hdrs != 0) {\n    print_arelt_descr(*(FILE **)PTR_stdout_0006ffdc,abfd,1,0);\n    in_EDX = extraout_EDX_04;\n  }\n  if (dump_file_header != 0) {\n    uVar9 = bfd_get_mach(abfd);\n    uVar10 = bfd_get_arch(abfd);\n    uVar9 = bfd_printable_arch_mach(uVar10,uVar9);\n    pcVar3 = (char *)dcgettext(0,"architecture: %s, ",5);\n    printf(pcVar3,uVar9);\n    uVar14 = *(uint *)&abfd->field_0x28;\n    pcVar3 = (char *)dcgettext(0,"flags 0x%08x:\n",5);\n    printf(pcVar3,uVar14 >> 5 & 0x3ff);\n    pcVar3 = "";\n    uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    if ((uVar14 & 1) != 0) {\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 2) != 0) {\n      printf("%s%s",pcVar3,"EXEC_P");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 4) != 0) {\n      printf("%s%s",pcVar3,"HAS_LINENO");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 8) != 0) {\n      printf("%s%s",pcVar3,"HAS_DEBUG");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x10) != 0) {\n      printf("%s%s",pcVar3,"HAS_SYMS");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x20) != 0) {\n      printf("%s%s",pcVar3,"HAS_LOCALS");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x40) != 0) {\n      printf("%s%s",pcVar3,"DYNAMIC");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x80) != 0) {\n      printf("%s%s",pcVar3,"WP_TEXT");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x100) != 0) {\n      printf("%s%s",pcVar3,"D_PAGED");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x200) != 0) {\n      printf("%s%s",pcVar3,"BFD_IS_RELAXABLE");\n    }\n    pcVar3 = (char *)dcgettext(0,"\nstart address 0x",5);\n    printf(pcVar3);\n    bfd_fprintf_vma(abfd,*(undefined4 *)PTR_stdout_0006ffdc,abfd->start_address);\n    putchar(10);\n    in_EDX = extraout_EDX_05;\n  }\n  if (dump_private_headers != 0) {\n    (*abfd->xvec->_bfd_print_private_bfd_data)(abfd,*(void **)PTR_stdout_0006ffdc);\n    in_EDX = extraout_EDX_00;\n  }\n  if (dump_private_options != (char *)0x0) {\n    pcVar3 = (char *)dcgettext(0,"option -P/--private not supported by this file",5);\n    non_fatal(pcVar3);\n    in_EDX = extraout_EDX;\n  }\n  if (dump_debugging_tags == 0 && suppress_bfd_header == 0) {\n    putc(10,*(FILE **)PTR_stdout_0006ffdc);\n    in_EDX = extraout_EDX_07;\n  }\n  uVar25 = CONCAT44(in_EDX,symcount);\n  ppaVar15 = syms;\n  if ((((dump_symtab != 0 || dump_reloc_info != 0) || disassemble != 0) || dump_debugging != 0) ||\n      dump_dwarf_section_info != 0) {\n    if ((abfd->field_0x29 & 2) == 0) {\n      uVar25 = (ulonglong)in_EDX << 0x20;\n      ppaVar15 = (asymbol **)0x0;\n    }\n    else {\n      lVar4 = (*abfd->xvec->_bfd_get_symtab_upper_bound)(abfd);\n      if (lVar4 < 0) {\n        pcVar3 = abfd->filename;\n        pcVar12 = (char *)dcgettext(0,"failed to read symbol table from: %s",5,lVar4);\n        non_fatal(pcVar12,pcVar3);\n        pcVar3 = (char *)dcgettext(0,"error message was",5);\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(pcVar3);\n      }\n      ppaVar15 = (bfd_symbol **)0x0;\n      if (lVar4 != 0) {\n        ppaVar15 = (asymbol **)xmalloc(lVar4);\n      }\n      uVar25 = (ulonglong)(*abfd->xvec->_bfd_canonicalize_symtab)(abfd,ppaVar15);\n      symcount = (long)uVar25;\n      if (symcount < 0) goto LAB_00017bfe;\n    }\n  }\n  syms = ppaVar15;\n  symcount = (long)uVar25;\n  if (dump_section_headers != 0) {\n    has_reloc = 0xd;\n    pcVar3 = (char *)dcgettext(0,"Sections:\n",5);\n    printf(pcVar3);\n    if (wide_output != 0) {\n      bfd_map_over_sections(abfd,find_longest_section_name,&has_reloc);\n    }\n    bVar11 = has_reloc;\n    pcVar3 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);\n    printf(pcVar3,bVar11,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);\n    if (wide_output != 0) {\n      pcVar3 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar3);\n    }\n    putchar(10);\n    bfd_map_over_sections(abfd,dump_section_header,&has_reloc);\n    uVar25 = CONCAT44(extraout_EDX_06,symcount);\n  }\n  symcount = (long)uVar25;\n  if (dump_dynamic_symtab == 0 && dump_dynamic_reloc_info == 0) {\n    if (disassemble != 0) {\n      lVar4 = (*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound)(abfd);\n      lVar26 = CONCAT44((int)((ulonglong)lVar4 >> 0x20),dynsymcount);\n      ppaVar15 = dynsyms;\n      if (0 < (int)lVar4) goto LAB_000170fd;\n      goto LAB_00017145;\n    }\n  }\n  else {\nLAB_000170fd:\n    lVar4 = (*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound)(abfd);\n    if (lVar4 < 0) {\n      pcVar3 = abfd->filename;\n      if ((abfd->field_0x29 & 8) != 0) {\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(pcVar3);\n      }\n      pcVar12 = (char *)dcgettext(0,"%s: not a dynamic object",5);\n      non_fatal(pcVar12,pcVar3);\n      exit_status = 1;\n      lVar26 = (ulonglong)extraout_EDX_01 << 0x20;\n      ppaVar15 = (asymbol **)0x0;\n    }\n    else {\n      ppaVar15 = (bfd_symbol **)0x0;\n      if (lVar4 != 0) {\n        ppaVar15 = (asymbol **)xmalloc(lVar4);\n      }\n      lVar26 = (longlong)(*abfd->xvec->_bfd_canonicalize_dynamic_symtab)(abfd,ppaVar15);\n      dynsymcount = (long)lVar26;\n      if (dynsymcount < 0) goto LAB_00017bfe;\n    }\nLAB_00017145:\n    dynsyms = ppaVar15;\n    dynsymcount = (long)lVar26;\n    uVar25 = CONCAT44((int)((ulonglong)lVar26 >> 0x20),symcount);\n    if (disassemble != 0) {\n      synthcount = (*abfd->xvec->_bfd_get_synthetic_symtab)\n                             (abfd,symcount,syms,dynsymcount,dynsyms,&synthsyms);\n      uVar25 = (ulonglong)(uint)symcount;\n      if (synthcount < 0) {\n        synthcount = 0;\n        uVar25 = (ulonglong)(uint)symcount;\n      }\n    }\n  }\n  symcount = (long)uVar25;\n  if (dump_symtab != 0) {\n    dump_symbols((bfd *)0x0,(bfd_boolean)(uVar25 >> 0x20));\n  }\n  if (dump_dynamic_symtab != 0) {\n    dump_symbols((bfd *)0x1,dump_dynamic_symtab);\n  }\n  if (dump_dwarf_section_info != 0) {\n    dump_dwarf(abfd);\n  }\n  if (dump_stab_section_info != 0) {\n    dump_stabs_section(abfd,".stab",".stabstr");\n    dump_stabs_section(abfd,".stab.excl",".stab.exclstr");\n    dump_stabs_section(abfd,".stab.index",".stab.indexstr");\n    dump_stabs_section(abfd,"LC_SYMTAB.stabs","LC_SYMTAB.stabstr");\n    dump_stabs_section(abfd,"$GDB_SYMBOLS$","$GDB_STRINGS$");\n  }\n  if (dump_reloc_info == 0) {\nLAB_00017355:\n    if (dump_dynamic_reloc_info != 0) {\n      if (disassemble != 0) goto LAB_00017371;\n      lVar4 = (*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound)(abfd);\n      if (lVar4 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (lVar4 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        relpp = (arelent **)xmalloc(lVar4);\n        lVar4 = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,relpp,dynsyms);\n        if (lVar4 < 0) goto LAB_00017bfe;\n        if (lVar4 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          dump_reloc_set(abfd,(asection *)0x0,relpp,lVar4);\n          puts("\n");\n        }\n        free(relpp);\n      }\n    }\nLAB_000171f0:\n    if (dump_section_contents != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(abfd,dump_section,0);\n    }\n    if (disassemble == 0) goto joined_r0x0001721a;\n  }\n  else {\n    if (disassemble == 0) {\n      bfd_map_over_sections(abfd,dump_relocs_in_section,0);\n      goto LAB_00017355;\n    }\n    if (dump_dynamic_reloc_info == 0) goto LAB_000171f0;\nLAB_00017371:\n    if (dump_section_contents != 0) goto LAB_00017ac0;\n  }\n  print_files = (print_file_list *)0x0;\n  prev_functionname = (char *)0x0;\n  prev_line = 0xffffffff;\n  sorted_symcount = symcount;\n  if (symcount == 0) {\n    sorted_symcount = dynsymcount;\n  }\n  prev_discriminator = 0;\n  __dest = (asymbol **)xmalloc((sorted_symcount + synthcount) * 4);\n  local_e8 = sorted_symcount;\n  ppaVar15 = syms;\n  if (symcount == 0) {\n    ppaVar15 = dynsyms;\n  }\n  sorted_syms = __dest;\n  memcpy(__dest,ppaVar15,sorted_symcount << 2);\n  pbVar5 = (bfd_section *)(PTR__bfd_std_section_0006ffd8 + 0xa8);\n  local_f0 = __dest;\n  local_ec = __dest;\nLAB_00017428:\n  local_e8 = local_e8 + -1;\n  if (-1 < local_e8) {\n    while( true ) {\n      ppaVar15 = local_f0 + 1;\n      paVar6 = *local_f0;\n      pbVar17 = (byte *)paVar6->name;\n      local_f0 = ppaVar15;\n      if ((pbVar17 == (byte *)0x0) || (*pbVar17 == 0)) break;\n      bVar21 = false;\n      bVar23 = (paVar6->flags & 0x104) == 0;\n      if (!bVar23) {\n        iVar13 = 4;\n        pbVar16 = pbVar17;\n        pbVar19 = &DAT_0004c8bd;\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          bVar21 = *pbVar16 < *pbVar19;\n          bVar23 = *pbVar16 == *pbVar19;\n          pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1;\n          pbVar19 = pbVar19 + (uint)bVar24 * -2 + 1;\n        } while (bVar23);\n        bVar22 = false;\n        bVar21 = (!bVar21 && !bVar23) == bVar21;\n        if (!bVar21) {\n          iVar13 = 5;\n          pbVar16 = &DAT_0004c8c2;\n          do {\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar22 = *pbVar17 < *pbVar16;\n            bVar21 = *pbVar17 == *pbVar16;\n            pbVar17 = pbVar17 + (uint)bVar24 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1;\n          } while (bVar21);\n          if ((!bVar22 && !bVar21) != bVar22) break;\n        }\n      }\n      if ((paVar6->section == pbVar5) || ((paVar6->section->flags & 0x1000) != 0)) break;\n      *local_ec = paVar6;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }\n    goto LAB_00017428;\n  }\nLAB_000174ab:\n  sorted_symcount = (int)local_ec - (int)__dest >> 2;\n  if (0 < synthcount) {\n    sorted_symcount = sorted_symcount + synthcount;\n    paVar6 = synthsyms;\n    do {\n      *local_ec = paVar6;\n      local_ec = local_ec + 1;\n      paVar6 = paVar6 + 1;\n    } while (__dest + sorted_symcount != local_ec);\n  }\n  qsort(__dest,sorted_symcount,4,compare_symbols);\n  init_disassemble_info(&has_reloc,*(undefined4 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0);\n  local_ac = &aux;\n  local_68 = objdump_print_address;\n  local_64 = objdump_symbol_at_address;\n  aux.require_sec = 0;\n  aux.dynrelbuf = (arelent **)0x0;\n  aux.dynrelcount = 0;\n  aux.reloc = (arelent *)0x0;\n  aux.abfd = abfd;\n  if (machine != (char *)0x0) {\n    pbVar7 = (bfd_arch_info *)bfd_scan_arch(machine);\n    pcVar3 = machine;\n    if (pbVar7 == (bfd_arch_info *)0x0) {\n      pcVar12 = (char *)dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    /* WARNING: Subroutine does not return */\n      fatal(pcVar12,pcVar3);\n    }\n    abfd->arch_info = pbVar7;\n  }\n  if (endian != BFD_ENDIAN_UNKNOWN) {\n    pbVar8 = (bfd_target *)xmalloc(0x1c4);\n    pbVar1 = abfd->xvec;\n    puVar20 = (undefined4 *)((uint)&pbVar8->flavour & 0xfffffffc);\n    iVar13 = (int)pbVar8 - (int)puVar20;\n    pbVar8->name = pbVar1->name;\n    pbVar8->backend_data = pbVar1->backend_data;\n    puVar18 = (undefined4 *)((int)pbVar1 - iVar13);\n    for (uVar14 = iVar13 + 0x1c4U >> 2; uVar14 != 0; uVar14 = uVar14 - 1) {\n      *puVar20 = *puVar18;\n      puVar18 = puVar18 + (uint)bVar24 * -2 + 1;\n      puVar20 = puVar20 + (uint)bVar24 * -2 + 1;\n    }\n    abfd->xvec = pbVar8;\n    pbVar8->byteorder = endian;\n  }\n  uVar9 = bfd_get_mach(abfd);\n  bVar2 = abfd->xvec->byteorder;\n  uVar10 = bfd_get_arch(abfd);\n  aux.disassemble_fn = (disassembler_ftype)disassembler(uVar10,bVar2 == BFD_ENDIAN_BIG,uVar9,abfd);\n  if (aux.disassemble_fn == (disassembler_ftype)0x0) {\n    uVar9 = bfd_get_arch(abfd);\n    uVar9 = bfd_printable_arch_mach(uVar9,0);\n    pcVar3 = (char *)dcgettext(0,"can\'t disassemble for architecture %s\n",5);\n    non_fatal(pcVar3,uVar9);\n    exit_status = 1;\n  }\n  else {\n    local_a8 = abfd->xvec->flavour;\n    local_a4 = bfd_get_arch(abfd);\n    local_a0 = bfd_get_mach(abfd);\n    local_24 = disassembler_options;\n    local_44 = bfd_octets_per_byte(abfd);\n    local_40 = 8;\n    local_3c = 3;\n    local_38 = 0;\n    bVar2 = abfd->xvec->byteorder;\n    if (bVar2 == BFD_ENDIAN_BIG) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (bVar2 == BFD_ENDIAN_LITTLE) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }\n    disassemble_init_for_target(&has_reloc);\n    lVar4 = (*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound)(abfd);\n    if (lVar4 < 0) {\n      if (dump_dynamic_reloc_info != 0) {\nLAB_00017bfe:\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(abfd->filename);\n      }\n    }\n    else if (lVar4 != 0) {\n      aux.dynrelbuf = (arelent **)xmalloc(lVar4);\n      aux.dynrelcount = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,aux.dynrelbuf,dynsyms);\n      if (aux.dynrelcount < 0) goto LAB_00017bfe;\n      qsort(aux.dynrelbuf,aux.dynrelcount,4,compare_relocs);\n    }\n    local_84 = sorted_syms;\n    local_7c = sorted_symcount;\n    bfd_map_over_sections(abfd,disassemble_section,&has_reloc);\n    if (aux.dynrelbuf != (arelent **)0x0) {\n      free(aux.dynrelbuf);\n    }\n    free(sorted_syms);\n  }\njoined_r0x0001721a:\n  if (dump_debugging != 0) {\n    dhandle = read_debugging_info(abfd,syms,symcount,1);\n    if (dhandle == (void *)0x0) {\n      if (dump_dwarf_section_info == 0) {\n        dwarf_select_sections_all();\n        dump_dwarf(abfd);\n      }\n    }\n    else {\n      bVar11 = print_debugging_info\n                         (*(FILE **)PTR_stdout_0006ffdc,dhandle,abfd,syms,\n                          (_func_char_ptr_bfd_ptr_char_ptr_int *)PTR_bfd_demangle_0006ffe4,\n                          (uint)(dump_debugging_tags != 0));\n      if (bVar11 == 0) {\n        pcVar3 = abfd->filename;\n        pcVar12 = (char *)dcgettext(0,"%s: printing debugging information failed",5);\n        non_fatal(pcVar12,pcVar3);\n        exit_status = 1;\n      }\n    }\n  }\n  if (syms != (asymbol **)0x0) {\n    free(syms);\n    syms = (asymbol **)0x0;\n  }\n  if (dynsyms != (asymbol **)0x0) {\n    free(dynsyms);\n    dynsyms = (asymbol **)0x0;\n  }\n  if (synthsyms != (asymbol *)0x0) {\n    free(synthsyms);\n    synthsyms = (asymbol *)0x0;\n  }\n  symcount = 0;\n  dynsymcount = 0;\n  synthcount = 0;\n  return;\n}" primitive_type (ERROR "__regparm3" identifier) (function_declarator "dump_bfd(bfd *abfd)" identifier (parameter_list "(bfd *abfd)" ( (parameter_declaration "bfd *abfd" type_identifier (pointer_declarator "*abfd" * identifier)) ))) (compound_statement "{\n  bfd_target *pbVar1;\n  bfd_endian bVar2;\n  char *pcVar3;\n  long lVar4;\n  asymbol **__dest;\n  bfd_section *pbVar5;\n  asymbol *paVar6;\n  bfd_arch_info *pbVar7;\n  bfd_target *pbVar8;\n  undefined4 uVar9;\n  undefined4 uVar10;\n  void *dhandle;\n  bfd_boolean bVar11;\n  char *__format;\n  arelent **relpp;\n  char *pcVar12;\n  int iVar13;\n  uint uVar14;\n  uint in_EDX;\n  uint extraout_EDX;\n  uint extraout_EDX_00;\n  uint extraout_EDX_01;\n  uint extraout_EDX_02;\n  uint extraout_EDX_03;\n  uint extraout_EDX_04;\n  uint extraout_EDX_05;\n  undefined4 extraout_EDX_06;\n  uint extraout_EDX_07;\n  asymbol **ppaVar15;\n  byte *pbVar16;\n  byte *pbVar17;\n  undefined4 *puVar18;\n  byte *pbVar19;\n  undefined4 *puVar20;\n  bool bVar21;\n  bool bVar22;\n  bool bVar23;\n  byte bVar24;\n  ulonglong uVar25;\n  longlong lVar26;\n  asymbol **local_f0;\n  asymbol **local_ec;\n  int local_e8;\n  objdump_disasm_info aux;\n  bfd_boolean has_reloc;\n  objdump_disasm_info *local_ac;\n  bfd_flavour local_a8;\n  undefined4 local_a4;\n  undefined4 local_a0;\n  undefined4 local_9c;\n  asymbol **local_84;\n  long local_7c;\n  code *local_68;\n  code *local_64;\n  undefined4 local_48;\n  undefined4 local_44;\n  undefined4 local_40;\n  undefined4 local_3c;\n  undefined4 local_38;\n  char *local_24;\n  undefined4 uStack_14;\n  \n  bVar24 = 0;\n  uStack_14 = 0x16fdb;\n  if (adjust_section_vma == 0) {\n    if (dump_debugging_tags == 0 && suppress_bfd_header == 0) {\nLAB_00017807:\n      pcVar3 = abfd->filename;\n      pcVar12 = abfd->xvec->name;\n      __format = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(__format,pcVar3,pcVar12);\n      in_EDX = extraout_EDX_03;\n    }\n  }\n  else {\n    has_reloc = *(uint *)&abfd->field_0x28 >> 5 & 1;\n    bfd_map_over_sections(abfd,adjust_addresses,&has_reloc);\n    in_EDX = extraout_EDX_02;\n    if (dump_debugging_tags == 0 && suppress_bfd_header == 0) goto LAB_00017807;\n  }\n  if (dump_ar_hdrs != 0) {\n    print_arelt_descr(*(FILE **)PTR_stdout_0006ffdc,abfd,1,0);\n    in_EDX = extraout_EDX_04;\n  }\n  if (dump_file_header != 0) {\n    uVar9 = bfd_get_mach(abfd);\n    uVar10 = bfd_get_arch(abfd);\n    uVar9 = bfd_printable_arch_mach(uVar10,uVar9);\n    pcVar3 = (char *)dcgettext(0,"architecture: %s, ",5);\n    printf(pcVar3,uVar9);\n    uVar14 = *(uint *)&abfd->field_0x28;\n    pcVar3 = (char *)dcgettext(0,"flags 0x%08x:\n",5);\n    printf(pcVar3,uVar14 >> 5 & 0x3ff);\n    pcVar3 = "";\n    uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    if ((uVar14 & 1) != 0) {\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 2) != 0) {\n      printf("%s%s",pcVar3,"EXEC_P");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 4) != 0) {\n      printf("%s%s",pcVar3,"HAS_LINENO");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 8) != 0) {\n      printf("%s%s",pcVar3,"HAS_DEBUG");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x10) != 0) {\n      printf("%s%s",pcVar3,"HAS_SYMS");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x20) != 0) {\n      printf("%s%s",pcVar3,"HAS_LOCALS");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x40) != 0) {\n      printf("%s%s",pcVar3,"DYNAMIC");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x80) != 0) {\n      printf("%s%s",pcVar3,"WP_TEXT");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x100) != 0) {\n      printf("%s%s",pcVar3,"D_PAGED");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x200) != 0) {\n      printf("%s%s",pcVar3,"BFD_IS_RELAXABLE");\n    }\n    pcVar3 = (char *)dcgettext(0,"\nstart address 0x",5);\n    printf(pcVar3);\n    bfd_fprintf_vma(abfd,*(undefined4 *)PTR_stdout_0006ffdc,abfd->start_address);\n    putchar(10);\n    in_EDX = extraout_EDX_05;\n  }\n  if (dump_private_headers != 0) {\n    (*abfd->xvec->_bfd_print_private_bfd_data)(abfd,*(void **)PTR_stdout_0006ffdc);\n    in_EDX = extraout_EDX_00;\n  }\n  if (dump_private_options != (char *)0x0) {\n    pcVar3 = (char *)dcgettext(0,"option -P/--private not supported by this file",5);\n    non_fatal(pcVar3);\n    in_EDX = extraout_EDX;\n  }\n  if (dump_debugging_tags == 0 && suppress_bfd_header == 0) {\n    putc(10,*(FILE **)PTR_stdout_0006ffdc);\n    in_EDX = extraout_EDX_07;\n  }\n  uVar25 = CONCAT44(in_EDX,symcount);\n  ppaVar15 = syms;\n  if ((((dump_symtab != 0 || dump_reloc_info != 0) || disassemble != 0) || dump_debugging != 0) ||\n      dump_dwarf_section_info != 0) {\n    if ((abfd->field_0x29 & 2) == 0) {\n      uVar25 = (ulonglong)in_EDX << 0x20;\n      ppaVar15 = (asymbol **)0x0;\n    }\n    else {\n      lVar4 = (*abfd->xvec->_bfd_get_symtab_upper_bound)(abfd);\n      if (lVar4 < 0) {\n        pcVar3 = abfd->filename;\n        pcVar12 = (char *)dcgettext(0,"failed to read symbol table from: %s",5,lVar4);\n        non_fatal(pcVar12,pcVar3);\n        pcVar3 = (char *)dcgettext(0,"error message was",5);\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(pcVar3);\n      }\n      ppaVar15 = (bfd_symbol **)0x0;\n      if (lVar4 != 0) {\n        ppaVar15 = (asymbol **)xmalloc(lVar4);\n      }\n      uVar25 = (ulonglong)(*abfd->xvec->_bfd_canonicalize_symtab)(abfd,ppaVar15);\n      symcount = (long)uVar25;\n      if (symcount < 0) goto LAB_00017bfe;\n    }\n  }\n  syms = ppaVar15;\n  symcount = (long)uVar25;\n  if (dump_section_headers != 0) {\n    has_reloc = 0xd;\n    pcVar3 = (char *)dcgettext(0,"Sections:\n",5);\n    printf(pcVar3);\n    if (wide_output != 0) {\n      bfd_map_over_sections(abfd,find_longest_section_name,&has_reloc);\n    }\n    bVar11 = has_reloc;\n    pcVar3 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);\n    printf(pcVar3,bVar11,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);\n    if (wide_output != 0) {\n      pcVar3 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar3);\n    }\n    putchar(10);\n    bfd_map_over_sections(abfd,dump_section_header,&has_reloc);\n    uVar25 = CONCAT44(extraout_EDX_06,symcount);\n  }\n  symcount = (long)uVar25;\n  if (dump_dynamic_symtab == 0 && dump_dynamic_reloc_info == 0) {\n    if (disassemble != 0) {\n      lVar4 = (*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound)(abfd);\n      lVar26 = CONCAT44((int)((ulonglong)lVar4 >> 0x20),dynsymcount);\n      ppaVar15 = dynsyms;\n      if (0 < (int)lVar4) goto LAB_000170fd;\n      goto LAB_00017145;\n    }\n  }\n  else {\nLAB_000170fd:\n    lVar4 = (*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound)(abfd);\n    if (lVar4 < 0) {\n      pcVar3 = abfd->filename;\n      if ((abfd->field_0x29 & 8) != 0) {\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(pcVar3);\n      }\n      pcVar12 = (char *)dcgettext(0,"%s: not a dynamic object",5);\n      non_fatal(pcVar12,pcVar3);\n      exit_status = 1;\n      lVar26 = (ulonglong)extraout_EDX_01 << 0x20;\n      ppaVar15 = (asymbol **)0x0;\n    }\n    else {\n      ppaVar15 = (bfd_symbol **)0x0;\n      if (lVar4 != 0) {\n        ppaVar15 = (asymbol **)xmalloc(lVar4);\n      }\n      lVar26 = (longlong)(*abfd->xvec->_bfd_canonicalize_dynamic_symtab)(abfd,ppaVar15);\n      dynsymcount = (long)lVar26;\n      if (dynsymcount < 0) goto LAB_00017bfe;\n    }\nLAB_00017145:\n    dynsyms = ppaVar15;\n    dynsymcount = (long)lVar26;\n    uVar25 = CONCAT44((int)((ulonglong)lVar26 >> 0x20),symcount);\n    if (disassemble != 0) {\n      synthcount = (*abfd->xvec->_bfd_get_synthetic_symtab)\n                             (abfd,symcount,syms,dynsymcount,dynsyms,&synthsyms);\n      uVar25 = (ulonglong)(uint)symcount;\n      if (synthcount < 0) {\n        synthcount = 0;\n        uVar25 = (ulonglong)(uint)symcount;\n      }\n    }\n  }\n  symcount = (long)uVar25;\n  if (dump_symtab != 0) {\n    dump_symbols((bfd *)0x0,(bfd_boolean)(uVar25 >> 0x20));\n  }\n  if (dump_dynamic_symtab != 0) {\n    dump_symbols((bfd *)0x1,dump_dynamic_symtab);\n  }\n  if (dump_dwarf_section_info != 0) {\n    dump_dwarf(abfd);\n  }\n  if (dump_stab_section_info != 0) {\n    dump_stabs_section(abfd,".stab",".stabstr");\n    dump_stabs_section(abfd,".stab.excl",".stab.exclstr");\n    dump_stabs_section(abfd,".stab.index",".stab.indexstr");\n    dump_stabs_section(abfd,"LC_SYMTAB.stabs","LC_SYMTAB.stabstr");\n    dump_stabs_section(abfd,"$GDB_SYMBOLS$","$GDB_STRINGS$");\n  }\n  if (dump_reloc_info == 0) {\nLAB_00017355:\n    if (dump_dynamic_reloc_info != 0) {\n      if (disassemble != 0) goto LAB_00017371;\n      lVar4 = (*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound)(abfd);\n      if (lVar4 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (lVar4 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        relpp = (arelent **)xmalloc(lVar4);\n        lVar4 = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,relpp,dynsyms);\n        if (lVar4 < 0) goto LAB_00017bfe;\n        if (lVar4 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          dump_reloc_set(abfd,(asection *)0x0,relpp,lVar4);\n          puts("\n");\n        }\n        free(relpp);\n      }\n    }\nLAB_000171f0:\n    if (dump_section_contents != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(abfd,dump_section,0);\n    }\n    if (disassemble == 0) goto joined_r0x0001721a;\n  }\n  else {\n    if (disassemble == 0) {\n      bfd_map_over_sections(abfd,dump_relocs_in_section,0);\n      goto LAB_00017355;\n    }\n    if (dump_dynamic_reloc_info == 0) goto LAB_000171f0;\nLAB_00017371:\n    if (dump_section_contents != 0) goto LAB_00017ac0;\n  }\n  print_files = (print_file_list *)0x0;\n  prev_functionname = (char *)0x0;\n  prev_line = 0xffffffff;\n  sorted_symcount = symcount;\n  if (symcount == 0) {\n    sorted_symcount = dynsymcount;\n  }\n  prev_discriminator = 0;\n  __dest = (asymbol **)xmalloc((sorted_symcount + synthcount) * 4);\n  local_e8 = sorted_symcount;\n  ppaVar15 = syms;\n  if (symcount == 0) {\n    ppaVar15 = dynsyms;\n  }\n  sorted_syms = __dest;\n  memcpy(__dest,ppaVar15,sorted_symcount << 2);\n  pbVar5 = (bfd_section *)(PTR__bfd_std_section_0006ffd8 + 0xa8);\n  local_f0 = __dest;\n  local_ec = __dest;\nLAB_00017428:\n  local_e8 = local_e8 + -1;\n  if (-1 < local_e8) {\n    while( true ) {\n      ppaVar15 = local_f0 + 1;\n      paVar6 = *local_f0;\n      pbVar17 = (byte *)paVar6->name;\n      local_f0 = ppaVar15;\n      if ((pbVar17 == (byte *)0x0) || (*pbVar17 == 0)) break;\n      bVar21 = false;\n      bVar23 = (paVar6->flags & 0x104) == 0;\n      if (!bVar23) {\n        iVar13 = 4;\n        pbVar16 = pbVar17;\n        pbVar19 = &DAT_0004c8bd;\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          bVar21 = *pbVar16 < *pbVar19;\n          bVar23 = *pbVar16 == *pbVar19;\n          pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1;\n          pbVar19 = pbVar19 + (uint)bVar24 * -2 + 1;\n        } while (bVar23);\n        bVar22 = false;\n        bVar21 = (!bVar21 && !bVar23) == bVar21;\n        if (!bVar21) {\n          iVar13 = 5;\n          pbVar16 = &DAT_0004c8c2;\n          do {\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar22 = *pbVar17 < *pbVar16;\n            bVar21 = *pbVar17 == *pbVar16;\n            pbVar17 = pbVar17 + (uint)bVar24 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1;\n          } while (bVar21);\n          if ((!bVar22 && !bVar21) != bVar22) break;\n        }\n      }\n      if ((paVar6->section == pbVar5) || ((paVar6->section->flags & 0x1000) != 0)) break;\n      *local_ec = paVar6;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }\n    goto LAB_00017428;\n  }\nLAB_000174ab:\n  sorted_symcount = (int)local_ec - (int)__dest >> 2;\n  if (0 < synthcount) {\n    sorted_symcount = sorted_symcount + synthcount;\n    paVar6 = synthsyms;\n    do {\n      *local_ec = paVar6;\n      local_ec = local_ec + 1;\n      paVar6 = paVar6 + 1;\n    } while (__dest + sorted_symcount != local_ec);\n  }\n  qsort(__dest,sorted_symcount,4,compare_symbols);\n  init_disassemble_info(&has_reloc,*(undefined4 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0);\n  local_ac = &aux;\n  local_68 = objdump_print_address;\n  local_64 = objdump_symbol_at_address;\n  aux.require_sec = 0;\n  aux.dynrelbuf = (arelent **)0x0;\n  aux.dynrelcount = 0;\n  aux.reloc = (arelent *)0x0;\n  aux.abfd = abfd;\n  if (machine != (char *)0x0) {\n    pbVar7 = (bfd_arch_info *)bfd_scan_arch(machine);\n    pcVar3 = machine;\n    if (pbVar7 == (bfd_arch_info *)0x0) {\n      pcVar12 = (char *)dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    /* WARNING: Subroutine does not return */\n      fatal(pcVar12,pcVar3);\n    }\n    abfd->arch_info = pbVar7;\n  }\n  if (endian != BFD_ENDIAN_UNKNOWN) {\n    pbVar8 = (bfd_target *)xmalloc(0x1c4);\n    pbVar1 = abfd->xvec;\n    puVar20 = (undefined4 *)((uint)&pbVar8->flavour & 0xfffffffc);\n    iVar13 = (int)pbVar8 - (int)puVar20;\n    pbVar8->name = pbVar1->name;\n    pbVar8->backend_data = pbVar1->backend_data;\n    puVar18 = (undefined4 *)((int)pbVar1 - iVar13);\n    for (uVar14 = iVar13 + 0x1c4U >> 2; uVar14 != 0; uVar14 = uVar14 - 1) {\n      *puVar20 = *puVar18;\n      puVar18 = puVar18 + (uint)bVar24 * -2 + 1;\n      puVar20 = puVar20 + (uint)bVar24 * -2 + 1;\n    }\n    abfd->xvec = pbVar8;\n    pbVar8->byteorder = endian;\n  }\n  uVar9 = bfd_get_mach(abfd);\n  bVar2 = abfd->xvec->byteorder;\n  uVar10 = bfd_get_arch(abfd);\n  aux.disassemble_fn = (disassembler_ftype)disassembler(uVar10,bVar2 == BFD_ENDIAN_BIG,uVar9,abfd);\n  if (aux.disassemble_fn == (disassembler_ftype)0x0) {\n    uVar9 = bfd_get_arch(abfd);\n    uVar9 = bfd_printable_arch_mach(uVar9,0);\n    pcVar3 = (char *)dcgettext(0,"can\'t disassemble for architecture %s\n",5);\n    non_fatal(pcVar3,uVar9);\n    exit_status = 1;\n  }\n  else {\n    local_a8 = abfd->xvec->flavour;\n    local_a4 = bfd_get_arch(abfd);\n    local_a0 = bfd_get_mach(abfd);\n    local_24 = disassembler_options;\n    local_44 = bfd_octets_per_byte(abfd);\n    local_40 = 8;\n    local_3c = 3;\n    local_38 = 0;\n    bVar2 = abfd->xvec->byteorder;\n    if (bVar2 == BFD_ENDIAN_BIG) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (bVar2 == BFD_ENDIAN_LITTLE) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }\n    disassemble_init_for_target(&has_reloc);\n    lVar4 = (*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound)(abfd);\n    if (lVar4 < 0) {\n      if (dump_dynamic_reloc_info != 0) {\nLAB_00017bfe:\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(abfd->filename);\n      }\n    }\n    else if (lVar4 != 0) {\n      aux.dynrelbuf = (arelent **)xmalloc(lVar4);\n      aux.dynrelcount = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,aux.dynrelbuf,dynsyms);\n      if (aux.dynrelcount < 0) goto LAB_00017bfe;\n      qsort(aux.dynrelbuf,aux.dynrelcount,4,compare_relocs);\n    }\n    local_84 = sorted_syms;\n    local_7c = sorted_symcount;\n    bfd_map_over_sections(abfd,disassemble_section,&has_reloc);\n    if (aux.dynrelbuf != (arelent **)0x0) {\n      free(aux.dynrelbuf);\n    }\n    free(sorted_syms);\n  }\njoined_r0x0001721a:\n  if (dump_debugging != 0) {\n    dhandle = read_debugging_info(abfd,syms,symcount,1);\n    if (dhandle == (void *)0x0) {\n      if (dump_dwarf_section_info == 0) {\n        dwarf_select_sections_all();\n        dump_dwarf(abfd);\n      }\n    }\n    else {\n      bVar11 = print_debugging_info\n                         (*(FILE **)PTR_stdout_0006ffdc,dhandle,abfd,syms,\n                          (_func_char_ptr_bfd_ptr_char_ptr_int *)PTR_bfd_demangle_0006ffe4,\n                          (uint)(dump_debugging_tags != 0));\n      if (bVar11 == 0) {\n        pcVar3 = abfd->filename;\n        pcVar12 = (char *)dcgettext(0,"%s: printing debugging information failed",5);\n        non_fatal(pcVar12,pcVar3);\n        exit_status = 1;\n      }\n    }\n  }\n  if (syms != (asymbol **)0x0) {\n    free(syms);\n    syms = (asymbol **)0x0;\n  }\n  if (dynsyms != (asymbol **)0x0) {\n    free(dynsyms);\n    dynsyms = (asymbol **)0x0;\n  }\n  if (synthsyms != (asymbol *)0x0) {\n    free(synthsyms);\n    synthsyms = (asymbol *)0x0;\n  }\n  symcount = 0;\n  dynsymcount = 0;\n  synthcount = 0;\n  return;\n}" { (declaration "bfd_target *pbVar1;" type_identifier (pointer_declarator "*pbVar1" * identifier) ;) (declaration "bfd_endian bVar2;" type_identifier identifier ;) (declaration "char *pcVar3;" primitive_type (pointer_declarator "*pcVar3" * identifier) ;) (declaration "long lVar4;" (sized_type_specifier "long" long) identifier ;) (declaration "asymbol **__dest;" type_identifier (pointer_declarator "**__dest" * (pointer_declarator "*__dest" * identifier)) ;) (declaration "bfd_section *pbVar5;" type_identifier (pointer_declarator "*pbVar5" * identifier) ;) (declaration "asymbol *paVar6;" type_identifier (pointer_declarator "*paVar6" * identifier) ;) (declaration "bfd_arch_info *pbVar7;" type_identifier (pointer_declarator "*pbVar7" * identifier) ;) (declaration "bfd_target *pbVar8;" type_identifier (pointer_declarator "*pbVar8" * identifier) ;) (declaration "undefined4 uVar9;" type_identifier identifier ;) (declaration "undefined4 uVar10;" type_identifier identifier ;) (declaration "void *dhandle;" primitive_type (pointer_declarator "*dhandle" * identifier) ;) (declaration "bfd_boolean bVar11;" type_identifier identifier ;) (declaration "char *__format;" primitive_type (pointer_declarator "*__format" * identifier) ;) (declaration "arelent **relpp;" type_identifier (pointer_declarator "**relpp" * (pointer_declarator "*relpp" * identifier)) ;) (declaration "char *pcVar12;" primitive_type (pointer_declarator "*pcVar12" * identifier) ;) (declaration "int iVar13;" primitive_type identifier ;) (declaration "uint uVar14;" type_identifier identifier ;) (declaration "uint in_EDX;" type_identifier identifier ;) (declaration "uint extraout_EDX;" type_identifier identifier ;) (declaration "uint extraout_EDX_00;" type_identifier identifier ;) (declaration "uint extraout_EDX_01;" type_identifier identifier ;) (declaration "uint extraout_EDX_02;" type_identifier identifier ;) (declaration "uint extraout_EDX_03;" type_identifier identifier ;) (declaration "uint extraout_EDX_04;" type_identifier identifier ;) (declaration "uint extraout_EDX_05;" type_identifier identifier ;) (declaration "undefined4 extraout_EDX_06;" type_identifier identifier ;) (declaration "uint extraout_EDX_07;" type_identifier identifier ;) (declaration "asymbol **ppaVar15;" type_identifier (pointer_declarator "**ppaVar15" * (pointer_declarator "*ppaVar15" * identifier)) ;) (declaration "byte *pbVar16;" type_identifier (pointer_declarator "*pbVar16" * identifier) ;) (declaration "byte *pbVar17;" type_identifier (pointer_declarator "*pbVar17" * identifier) ;) (declaration "undefined4 *puVar18;" type_identifier (pointer_declarator "*puVar18" * identifier) ;) (declaration "byte *pbVar19;" type_identifier (pointer_declarator "*pbVar19" * identifier) ;) (declaration "undefined4 *puVar20;" type_identifier (pointer_declarator "*puVar20" * identifier) ;) (declaration "bool bVar21;" primitive_type identifier ;) (declaration "bool bVar22;" primitive_type identifier ;) (declaration "bool bVar23;" primitive_type identifier ;) (declaration "byte bVar24;" type_identifier identifier ;) (declaration "ulonglong uVar25;" type_identifier identifier ;) (declaration "longlong lVar26;" type_identifier identifier ;) (declaration "asymbol **local_f0;" type_identifier (pointer_declarator "**local_f0" * (pointer_declarator "*local_f0" * identifier)) ;) (declaration "asymbol **local_ec;" type_identifier (pointer_declarator "**local_ec" * (pointer_declarator "*local_ec" * identifier)) ;) (declaration "int local_e8;" primitive_type identifier ;) (declaration "objdump_disasm_info aux;" type_identifier identifier ;) (declaration "bfd_boolean has_reloc;" type_identifier identifier ;) (declaration "objdump_disasm_info *local_ac;" type_identifier (pointer_declarator "*local_ac" * identifier) ;) (declaration "bfd_flavour local_a8;" type_identifier identifier ;) (declaration "undefined4 local_a4;" type_identifier identifier ;) (declaration "undefined4 local_a0;" type_identifier identifier ;) (declaration "undefined4 local_9c;" type_identifier identifier ;) (declaration "asymbol **local_84;" type_identifier (pointer_declarator "**local_84" * (pointer_declarator "*local_84" * identifier)) ;) (declaration "long local_7c;" (sized_type_specifier "long" long) identifier ;) (declaration "code *local_68;" type_identifier (pointer_declarator "*local_68" * identifier) ;) (declaration "code *local_64;" type_identifier (pointer_declarator "*local_64" * identifier) ;) (declaration "undefined4 local_48;" type_identifier identifier ;) (declaration "undefined4 local_44;" type_identifier identifier ;) (declaration "undefined4 local_40;" type_identifier identifier ;) (declaration "undefined4 local_3c;" type_identifier identifier ;) (declaration "undefined4 local_38;" type_identifier identifier ;) (declaration "char *local_24;" primitive_type (pointer_declarator "*local_24" * identifier) ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "bVar24 = 0;" (assignment_expression "bVar24 = 0" identifier = number_literal) ;) (expression_statement "uStack_14 = 0x16fdb;" (assignment_expression "uStack_14 = 0x16fdb" identifier = number_literal) ;) (if_statement "if (adjust_section_vma == 0) {\n    if (dump_debugging_tags == 0 && suppress_bfd_header == 0) {\nLAB_00017807:\n      pcVar3 = abfd->filename;\n      pcVar12 = abfd->xvec->name;\n      __format = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(__format,pcVar3,pcVar12);\n      in_EDX = extraout_EDX_03;\n    }\n  }\n  else {\n    has_reloc = *(uint *)&abfd->field_0x28 >> 5 & 1;\n    bfd_map_over_sections(abfd,adjust_addresses,&has_reloc);\n    in_EDX = extraout_EDX_02;\n    if (dump_debugging_tags == 0 && suppress_bfd_header == 0) goto LAB_00017807;\n  }" if (parenthesized_expression "(adjust_section_vma == 0)" ( (binary_expression "adjust_section_vma == 0" identifier == number_literal) )) (compound_statement "{\n    if (dump_debugging_tags == 0 && suppress_bfd_header == 0) {\nLAB_00017807:\n      pcVar3 = abfd->filename;\n      pcVar12 = abfd->xvec->name;\n      __format = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(__format,pcVar3,pcVar12);\n      in_EDX = extraout_EDX_03;\n    }\n  }" { (if_statement "if (dump_debugging_tags == 0 && suppress_bfd_header == 0) {\nLAB_00017807:\n      pcVar3 = abfd->filename;\n      pcVar12 = abfd->xvec->name;\n      __format = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(__format,pcVar3,pcVar12);\n      in_EDX = extraout_EDX_03;\n    }" if (parenthesized_expression "(dump_debugging_tags == 0 && suppress_bfd_header == 0)" ( (binary_expression "dump_debugging_tags == 0 && suppress_bfd_header == 0" (binary_expression "dump_debugging_tags == 0" identifier == number_literal) && (binary_expression "suppress_bfd_header == 0" identifier == number_literal)) )) (compound_statement "{\nLAB_00017807:\n      pcVar3 = abfd->filename;\n      pcVar12 = abfd->xvec->name;\n      __format = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(__format,pcVar3,pcVar12);\n      in_EDX = extraout_EDX_03;\n    }" { (labeled_statement "LAB_00017807:\n      pcVar3 = abfd->filename;" statement_identifier : (expression_statement "pcVar3 = abfd->filename;" (assignment_expression "pcVar3 = abfd->filename" identifier = (field_expression "abfd->filename" identifier -> field_identifier)) ;)) (expression_statement "pcVar12 = abfd->xvec->name;" (assignment_expression "pcVar12 = abfd->xvec->name" identifier = (field_expression "abfd->xvec->name" (field_expression "abfd->xvec" identifier -> field_identifier) -> field_identifier)) ;) (expression_statement "__format = (char *)dcgettext(0,"\n%s:     file format %s\n",5);" (assignment_expression "__format = (char *)dcgettext(0,"\n%s:     file format %s\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\n%s:     file format %s\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\n%s:     file format %s\n",5)" identifier (argument_list "(0,"\n%s:     file format %s\n",5)" ( number_literal , (string_literal ""\n%s:     file format %s\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(__format,pcVar3,pcVar12);" (call_expression "printf(__format,pcVar3,pcVar12)" identifier (argument_list "(__format,pcVar3,pcVar12)" ( identifier , identifier , identifier ))) ;) (expression_statement "in_EDX = extraout_EDX_03;" (assignment_expression "in_EDX = extraout_EDX_03" identifier = identifier) ;) })) }) (else_clause "else {\n    has_reloc = *(uint *)&abfd->field_0x28 >> 5 & 1;\n    bfd_map_over_sections(abfd,adjust_addresses,&has_reloc);\n    in_EDX = extraout_EDX_02;\n    if (dump_debugging_tags == 0 && suppress_bfd_header == 0) goto LAB_00017807;\n  }" else (compound_statement "{\n    has_reloc = *(uint *)&abfd->field_0x28 >> 5 & 1;\n    bfd_map_over_sections(abfd,adjust_addresses,&has_reloc);\n    in_EDX = extraout_EDX_02;\n    if (dump_debugging_tags == 0 && suppress_bfd_header == 0) goto LAB_00017807;\n  }" { (expression_statement "has_reloc = *(uint *)&abfd->field_0x28 >> 5 & 1;" (assignment_expression "has_reloc = *(uint *)&abfd->field_0x28 >> 5 & 1" identifier = (binary_expression "*(uint *)&abfd->field_0x28 >> 5 & 1" (binary_expression "*(uint *)&abfd->field_0x28 >> 5" (pointer_expression "*(uint *)&abfd->field_0x28" * (cast_expression "(uint *)&abfd->field_0x28" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&abfd->field_0x28" & (field_expression "abfd->field_0x28" identifier -> field_identifier)))) >> number_literal) & number_literal)) ;) (expression_statement "bfd_map_over_sections(abfd,adjust_addresses,&has_reloc);" (call_expression "bfd_map_over_sections(abfd,adjust_addresses,&has_reloc)" identifier (argument_list "(abfd,adjust_addresses,&has_reloc)" ( identifier , identifier , (pointer_expression "&has_reloc" & identifier) ))) ;) (expression_statement "in_EDX = extraout_EDX_02;" (assignment_expression "in_EDX = extraout_EDX_02" identifier = identifier) ;) (if_statement "if (dump_debugging_tags == 0 && suppress_bfd_header == 0) goto LAB_00017807;" if (parenthesized_expression "(dump_debugging_tags == 0 && suppress_bfd_header == 0)" ( (binary_expression "dump_debugging_tags == 0 && suppress_bfd_header == 0" (binary_expression "dump_debugging_tags == 0" identifier == number_literal) && (binary_expression "suppress_bfd_header == 0" identifier == number_literal)) )) (goto_statement "goto LAB_00017807;" goto statement_identifier ;)) }))) (if_statement "if (dump_ar_hdrs != 0) {\n    print_arelt_descr(*(FILE **)PTR_stdout_0006ffdc,abfd,1,0);\n    in_EDX = extraout_EDX_04;\n  }" if (parenthesized_expression "(dump_ar_hdrs != 0)" ( (binary_expression "dump_ar_hdrs != 0" identifier != number_literal) )) (compound_statement "{\n    print_arelt_descr(*(FILE **)PTR_stdout_0006ffdc,abfd,1,0);\n    in_EDX = extraout_EDX_04;\n  }" { (expression_statement "print_arelt_descr(*(FILE **)PTR_stdout_0006ffdc,abfd,1,0);" (call_expression "print_arelt_descr(*(FILE **)PTR_stdout_0006ffdc,abfd,1,0)" identifier (argument_list "(*(FILE **)PTR_stdout_0006ffdc,abfd,1,0)" ( (pointer_expression "*(FILE **)PTR_stdout_0006ffdc" * (cast_expression "(FILE **)PTR_stdout_0006ffdc" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) , identifier , number_literal , number_literal ))) ;) (expression_statement "in_EDX = extraout_EDX_04;" (assignment_expression "in_EDX = extraout_EDX_04" identifier = identifier) ;) })) (if_statement "if (dump_file_header != 0) {\n    uVar9 = bfd_get_mach(abfd);\n    uVar10 = bfd_get_arch(abfd);\n    uVar9 = bfd_printable_arch_mach(uVar10,uVar9);\n    pcVar3 = (char *)dcgettext(0,"architecture: %s, ",5);\n    printf(pcVar3,uVar9);\n    uVar14 = *(uint *)&abfd->field_0x28;\n    pcVar3 = (char *)dcgettext(0,"flags 0x%08x:\n",5);\n    printf(pcVar3,uVar14 >> 5 & 0x3ff);\n    pcVar3 = "";\n    uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    if ((uVar14 & 1) != 0) {\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 2) != 0) {\n      printf("%s%s",pcVar3,"EXEC_P");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 4) != 0) {\n      printf("%s%s",pcVar3,"HAS_LINENO");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 8) != 0) {\n      printf("%s%s",pcVar3,"HAS_DEBUG");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x10) != 0) {\n      printf("%s%s",pcVar3,"HAS_SYMS");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x20) != 0) {\n      printf("%s%s",pcVar3,"HAS_LOCALS");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x40) != 0) {\n      printf("%s%s",pcVar3,"DYNAMIC");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x80) != 0) {\n      printf("%s%s",pcVar3,"WP_TEXT");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x100) != 0) {\n      printf("%s%s",pcVar3,"D_PAGED");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x200) != 0) {\n      printf("%s%s",pcVar3,"BFD_IS_RELAXABLE");\n    }\n    pcVar3 = (char *)dcgettext(0,"\nstart address 0x",5);\n    printf(pcVar3);\n    bfd_fprintf_vma(abfd,*(undefined4 *)PTR_stdout_0006ffdc,abfd->start_address);\n    putchar(10);\n    in_EDX = extraout_EDX_05;\n  }" if (parenthesized_expression "(dump_file_header != 0)" ( (binary_expression "dump_file_header != 0" identifier != number_literal) )) (compound_statement "{\n    uVar9 = bfd_get_mach(abfd);\n    uVar10 = bfd_get_arch(abfd);\n    uVar9 = bfd_printable_arch_mach(uVar10,uVar9);\n    pcVar3 = (char *)dcgettext(0,"architecture: %s, ",5);\n    printf(pcVar3,uVar9);\n    uVar14 = *(uint *)&abfd->field_0x28;\n    pcVar3 = (char *)dcgettext(0,"flags 0x%08x:\n",5);\n    printf(pcVar3,uVar14 >> 5 & 0x3ff);\n    pcVar3 = "";\n    uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    if ((uVar14 & 1) != 0) {\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 2) != 0) {\n      printf("%s%s",pcVar3,"EXEC_P");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 4) != 0) {\n      printf("%s%s",pcVar3,"HAS_LINENO");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 8) != 0) {\n      printf("%s%s",pcVar3,"HAS_DEBUG");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x10) != 0) {\n      printf("%s%s",pcVar3,"HAS_SYMS");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x20) != 0) {\n      printf("%s%s",pcVar3,"HAS_LOCALS");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x40) != 0) {\n      printf("%s%s",pcVar3,"DYNAMIC");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x80) != 0) {\n      printf("%s%s",pcVar3,"WP_TEXT");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x100) != 0) {\n      printf("%s%s",pcVar3,"D_PAGED");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }\n    if ((uVar14 & 0x200) != 0) {\n      printf("%s%s",pcVar3,"BFD_IS_RELAXABLE");\n    }\n    pcVar3 = (char *)dcgettext(0,"\nstart address 0x",5);\n    printf(pcVar3);\n    bfd_fprintf_vma(abfd,*(undefined4 *)PTR_stdout_0006ffdc,abfd->start_address);\n    putchar(10);\n    in_EDX = extraout_EDX_05;\n  }" { (expression_statement "uVar9 = bfd_get_mach(abfd);" (assignment_expression "uVar9 = bfd_get_mach(abfd)" identifier = (call_expression "bfd_get_mach(abfd)" identifier (argument_list "(abfd)" ( identifier )))) ;) (expression_statement "uVar10 = bfd_get_arch(abfd);" (assignment_expression "uVar10 = bfd_get_arch(abfd)" identifier = (call_expression "bfd_get_arch(abfd)" identifier (argument_list "(abfd)" ( identifier )))) ;) (expression_statement "uVar9 = bfd_printable_arch_mach(uVar10,uVar9);" (assignment_expression "uVar9 = bfd_printable_arch_mach(uVar10,uVar9)" identifier = (call_expression "bfd_printable_arch_mach(uVar10,uVar9)" identifier (argument_list "(uVar10,uVar9)" ( identifier , identifier )))) ;) (expression_statement "pcVar3 = (char *)dcgettext(0,"architecture: %s, ",5);" (assignment_expression "pcVar3 = (char *)dcgettext(0,"architecture: %s, ",5)" identifier = (cast_expression "(char *)dcgettext(0,"architecture: %s, ",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"architecture: %s, ",5)" identifier (argument_list "(0,"architecture: %s, ",5)" ( number_literal , (string_literal ""architecture: %s, "" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar3,uVar9);" (call_expression "printf(pcVar3,uVar9)" identifier (argument_list "(pcVar3,uVar9)" ( identifier , identifier ))) ;) (expression_statement "uVar14 = *(uint *)&abfd->field_0x28;" (assignment_expression "uVar14 = *(uint *)&abfd->field_0x28" identifier = (pointer_expression "*(uint *)&abfd->field_0x28" * (cast_expression "(uint *)&abfd->field_0x28" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&abfd->field_0x28" & (field_expression "abfd->field_0x28" identifier -> field_identifier))))) ;) (expression_statement "pcVar3 = (char *)dcgettext(0,"flags 0x%08x:\n",5);" (assignment_expression "pcVar3 = (char *)dcgettext(0,"flags 0x%08x:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"flags 0x%08x:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"flags 0x%08x:\n",5)" identifier (argument_list "(0,"flags 0x%08x:\n",5)" ( number_literal , (string_literal ""flags 0x%08x:\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar3,uVar14 >> 5 & 0x3ff);" (call_expression "printf(pcVar3,uVar14 >> 5 & 0x3ff)" identifier (argument_list "(pcVar3,uVar14 >> 5 & 0x3ff)" ( identifier , (binary_expression "uVar14 >> 5 & 0x3ff" (binary_expression "uVar14 >> 5" identifier >> number_literal) & number_literal) ))) ;) (expression_statement "pcVar3 = "";" (assignment_expression "pcVar3 = """ identifier = (string_literal """" " ")) ;) (expression_statement "uVar14 = *(uint *)&abfd->field_0x28 >> 5;" (assignment_expression "uVar14 = *(uint *)&abfd->field_0x28 >> 5" identifier = (binary_expression "*(uint *)&abfd->field_0x28 >> 5" (pointer_expression "*(uint *)&abfd->field_0x28" * (cast_expression "(uint *)&abfd->field_0x28" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&abfd->field_0x28" & (field_expression "abfd->field_0x28" identifier -> field_identifier)))) >> number_literal)) ;) (if_statement "if ((uVar14 & 1) != 0) {\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }" if (parenthesized_expression "((uVar14 & 1) != 0)" ( (binary_expression "(uVar14 & 1) != 0" (parenthesized_expression "(uVar14 & 1)" ( (binary_expression "uVar14 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }" { (expression_statement "printf("%s%s",&DAT_0004ca07,"HAS_RELOC");" (call_expression "printf("%s%s",&DAT_0004ca07,"HAS_RELOC")" identifier (argument_list "("%s%s",&DAT_0004ca07,"HAS_RELOC")" ( (string_literal ""%s%s"" " string_content ") , (pointer_expression "&DAT_0004ca07" & identifier) , (string_literal ""HAS_RELOC"" " string_content ") ))) ;) (expression_statement "pcVar3 = ", ";" (assignment_expression "pcVar3 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar14 = *(uint *)&abfd->field_0x28 >> 5;" (assignment_expression "uVar14 = *(uint *)&abfd->field_0x28 >> 5" identifier = (binary_expression "*(uint *)&abfd->field_0x28 >> 5" (pointer_expression "*(uint *)&abfd->field_0x28" * (cast_expression "(uint *)&abfd->field_0x28" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&abfd->field_0x28" & (field_expression "abfd->field_0x28" identifier -> field_identifier)))) >> number_literal)) ;) })) (if_statement "if ((uVar14 & 2) != 0) {\n      printf("%s%s",pcVar3,"EXEC_P");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }" if (parenthesized_expression "((uVar14 & 2) != 0)" ( (binary_expression "(uVar14 & 2) != 0" (parenthesized_expression "(uVar14 & 2)" ( (binary_expression "uVar14 & 2" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar3,"EXEC_P");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }" { (expression_statement "printf("%s%s",pcVar3,"EXEC_P");" (call_expression "printf("%s%s",pcVar3,"EXEC_P")" identifier (argument_list "("%s%s",pcVar3,"EXEC_P")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""EXEC_P"" " string_content ") ))) ;) (expression_statement "pcVar3 = ", ";" (assignment_expression "pcVar3 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar14 = *(uint *)&abfd->field_0x28 >> 5;" (assignment_expression "uVar14 = *(uint *)&abfd->field_0x28 >> 5" identifier = (binary_expression "*(uint *)&abfd->field_0x28 >> 5" (pointer_expression "*(uint *)&abfd->field_0x28" * (cast_expression "(uint *)&abfd->field_0x28" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&abfd->field_0x28" & (field_expression "abfd->field_0x28" identifier -> field_identifier)))) >> number_literal)) ;) })) (if_statement "if ((uVar14 & 4) != 0) {\n      printf("%s%s",pcVar3,"HAS_LINENO");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }" if (parenthesized_expression "((uVar14 & 4) != 0)" ( (binary_expression "(uVar14 & 4) != 0" (parenthesized_expression "(uVar14 & 4)" ( (binary_expression "uVar14 & 4" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar3,"HAS_LINENO");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }" { (expression_statement "printf("%s%s",pcVar3,"HAS_LINENO");" (call_expression "printf("%s%s",pcVar3,"HAS_LINENO")" identifier (argument_list "("%s%s",pcVar3,"HAS_LINENO")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""HAS_LINENO"" " string_content ") ))) ;) (expression_statement "pcVar3 = ", ";" (assignment_expression "pcVar3 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar14 = *(uint *)&abfd->field_0x28 >> 5;" (assignment_expression "uVar14 = *(uint *)&abfd->field_0x28 >> 5" identifier = (binary_expression "*(uint *)&abfd->field_0x28 >> 5" (pointer_expression "*(uint *)&abfd->field_0x28" * (cast_expression "(uint *)&abfd->field_0x28" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&abfd->field_0x28" & (field_expression "abfd->field_0x28" identifier -> field_identifier)))) >> number_literal)) ;) })) (if_statement "if ((uVar14 & 8) != 0) {\n      printf("%s%s",pcVar3,"HAS_DEBUG");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }" if (parenthesized_expression "((uVar14 & 8) != 0)" ( (binary_expression "(uVar14 & 8) != 0" (parenthesized_expression "(uVar14 & 8)" ( (binary_expression "uVar14 & 8" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar3,"HAS_DEBUG");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }" { (expression_statement "printf("%s%s",pcVar3,"HAS_DEBUG");" (call_expression "printf("%s%s",pcVar3,"HAS_DEBUG")" identifier (argument_list "("%s%s",pcVar3,"HAS_DEBUG")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""HAS_DEBUG"" " string_content ") ))) ;) (expression_statement "pcVar3 = ", ";" (assignment_expression "pcVar3 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar14 = *(uint *)&abfd->field_0x28 >> 5;" (assignment_expression "uVar14 = *(uint *)&abfd->field_0x28 >> 5" identifier = (binary_expression "*(uint *)&abfd->field_0x28 >> 5" (pointer_expression "*(uint *)&abfd->field_0x28" * (cast_expression "(uint *)&abfd->field_0x28" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&abfd->field_0x28" & (field_expression "abfd->field_0x28" identifier -> field_identifier)))) >> number_literal)) ;) })) (if_statement "if ((uVar14 & 0x10) != 0) {\n      printf("%s%s",pcVar3,"HAS_SYMS");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }" if (parenthesized_expression "((uVar14 & 0x10) != 0)" ( (binary_expression "(uVar14 & 0x10) != 0" (parenthesized_expression "(uVar14 & 0x10)" ( (binary_expression "uVar14 & 0x10" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar3,"HAS_SYMS");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }" { (expression_statement "printf("%s%s",pcVar3,"HAS_SYMS");" (call_expression "printf("%s%s",pcVar3,"HAS_SYMS")" identifier (argument_list "("%s%s",pcVar3,"HAS_SYMS")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""HAS_SYMS"" " string_content ") ))) ;) (expression_statement "pcVar3 = ", ";" (assignment_expression "pcVar3 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar14 = *(uint *)&abfd->field_0x28 >> 5;" (assignment_expression "uVar14 = *(uint *)&abfd->field_0x28 >> 5" identifier = (binary_expression "*(uint *)&abfd->field_0x28 >> 5" (pointer_expression "*(uint *)&abfd->field_0x28" * (cast_expression "(uint *)&abfd->field_0x28" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&abfd->field_0x28" & (field_expression "abfd->field_0x28" identifier -> field_identifier)))) >> number_literal)) ;) })) (if_statement "if ((uVar14 & 0x20) != 0) {\n      printf("%s%s",pcVar3,"HAS_LOCALS");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }" if (parenthesized_expression "((uVar14 & 0x20) != 0)" ( (binary_expression "(uVar14 & 0x20) != 0" (parenthesized_expression "(uVar14 & 0x20)" ( (binary_expression "uVar14 & 0x20" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar3,"HAS_LOCALS");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }" { (expression_statement "printf("%s%s",pcVar3,"HAS_LOCALS");" (call_expression "printf("%s%s",pcVar3,"HAS_LOCALS")" identifier (argument_list "("%s%s",pcVar3,"HAS_LOCALS")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""HAS_LOCALS"" " string_content ") ))) ;) (expression_statement "pcVar3 = ", ";" (assignment_expression "pcVar3 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar14 = *(uint *)&abfd->field_0x28 >> 5;" (assignment_expression "uVar14 = *(uint *)&abfd->field_0x28 >> 5" identifier = (binary_expression "*(uint *)&abfd->field_0x28 >> 5" (pointer_expression "*(uint *)&abfd->field_0x28" * (cast_expression "(uint *)&abfd->field_0x28" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&abfd->field_0x28" & (field_expression "abfd->field_0x28" identifier -> field_identifier)))) >> number_literal)) ;) })) (if_statement "if ((uVar14 & 0x40) != 0) {\n      printf("%s%s",pcVar3,"DYNAMIC");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }" if (parenthesized_expression "((uVar14 & 0x40) != 0)" ( (binary_expression "(uVar14 & 0x40) != 0" (parenthesized_expression "(uVar14 & 0x40)" ( (binary_expression "uVar14 & 0x40" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar3,"DYNAMIC");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }" { (expression_statement "printf("%s%s",pcVar3,"DYNAMIC");" (call_expression "printf("%s%s",pcVar3,"DYNAMIC")" identifier (argument_list "("%s%s",pcVar3,"DYNAMIC")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""DYNAMIC"" " string_content ") ))) ;) (expression_statement "pcVar3 = ", ";" (assignment_expression "pcVar3 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar14 = *(uint *)&abfd->field_0x28 >> 5;" (assignment_expression "uVar14 = *(uint *)&abfd->field_0x28 >> 5" identifier = (binary_expression "*(uint *)&abfd->field_0x28 >> 5" (pointer_expression "*(uint *)&abfd->field_0x28" * (cast_expression "(uint *)&abfd->field_0x28" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&abfd->field_0x28" & (field_expression "abfd->field_0x28" identifier -> field_identifier)))) >> number_literal)) ;) })) (if_statement "if ((uVar14 & 0x80) != 0) {\n      printf("%s%s",pcVar3,"WP_TEXT");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }" if (parenthesized_expression "((uVar14 & 0x80) != 0)" ( (binary_expression "(uVar14 & 0x80) != 0" (parenthesized_expression "(uVar14 & 0x80)" ( (binary_expression "uVar14 & 0x80" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar3,"WP_TEXT");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }" { (expression_statement "printf("%s%s",pcVar3,"WP_TEXT");" (call_expression "printf("%s%s",pcVar3,"WP_TEXT")" identifier (argument_list "("%s%s",pcVar3,"WP_TEXT")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""WP_TEXT"" " string_content ") ))) ;) (expression_statement "pcVar3 = ", ";" (assignment_expression "pcVar3 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar14 = *(uint *)&abfd->field_0x28 >> 5;" (assignment_expression "uVar14 = *(uint *)&abfd->field_0x28 >> 5" identifier = (binary_expression "*(uint *)&abfd->field_0x28 >> 5" (pointer_expression "*(uint *)&abfd->field_0x28" * (cast_expression "(uint *)&abfd->field_0x28" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&abfd->field_0x28" & (field_expression "abfd->field_0x28" identifier -> field_identifier)))) >> number_literal)) ;) })) (if_statement "if ((uVar14 & 0x100) != 0) {\n      printf("%s%s",pcVar3,"D_PAGED");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }" if (parenthesized_expression "((uVar14 & 0x100) != 0)" ( (binary_expression "(uVar14 & 0x100) != 0" (parenthesized_expression "(uVar14 & 0x100)" ( (binary_expression "uVar14 & 0x100" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar3,"D_PAGED");\n      pcVar3 = ", ";\n      uVar14 = *(uint *)&abfd->field_0x28 >> 5;\n    }" { (expression_statement "printf("%s%s",pcVar3,"D_PAGED");" (call_expression "printf("%s%s",pcVar3,"D_PAGED")" identifier (argument_list "("%s%s",pcVar3,"D_PAGED")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""D_PAGED"" " string_content ") ))) ;) (expression_statement "pcVar3 = ", ";" (assignment_expression "pcVar3 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar14 = *(uint *)&abfd->field_0x28 >> 5;" (assignment_expression "uVar14 = *(uint *)&abfd->field_0x28 >> 5" identifier = (binary_expression "*(uint *)&abfd->field_0x28 >> 5" (pointer_expression "*(uint *)&abfd->field_0x28" * (cast_expression "(uint *)&abfd->field_0x28" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&abfd->field_0x28" & (field_expression "abfd->field_0x28" identifier -> field_identifier)))) >> number_literal)) ;) })) (if_statement "if ((uVar14 & 0x200) != 0) {\n      printf("%s%s",pcVar3,"BFD_IS_RELAXABLE");\n    }" if (parenthesized_expression "((uVar14 & 0x200) != 0)" ( (binary_expression "(uVar14 & 0x200) != 0" (parenthesized_expression "(uVar14 & 0x200)" ( (binary_expression "uVar14 & 0x200" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar3,"BFD_IS_RELAXABLE");\n    }" { (expression_statement "printf("%s%s",pcVar3,"BFD_IS_RELAXABLE");" (call_expression "printf("%s%s",pcVar3,"BFD_IS_RELAXABLE")" identifier (argument_list "("%s%s",pcVar3,"BFD_IS_RELAXABLE")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""BFD_IS_RELAXABLE"" " string_content ") ))) ;) })) (expression_statement "pcVar3 = (char *)dcgettext(0,"\nstart address 0x",5);" (assignment_expression "pcVar3 = (char *)dcgettext(0,"\nstart address 0x",5)" identifier = (cast_expression "(char *)dcgettext(0,"\nstart address 0x",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\nstart address 0x",5)" identifier (argument_list "(0,"\nstart address 0x",5)" ( number_literal , (string_literal ""\nstart address 0x"" " escape_sequence string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar3);" (call_expression "printf(pcVar3)" identifier (argument_list "(pcVar3)" ( identifier ))) ;) (expression_statement "bfd_fprintf_vma(abfd,*(undefined4 *)PTR_stdout_0006ffdc,abfd->start_address);" (call_expression "bfd_fprintf_vma(abfd,*(undefined4 *)PTR_stdout_0006ffdc,abfd->start_address)" identifier (argument_list "(abfd,*(undefined4 *)PTR_stdout_0006ffdc,abfd->start_address)" ( identifier , (pointer_expression "*(undefined4 *)PTR_stdout_0006ffdc" * (cast_expression "(undefined4 *)PTR_stdout_0006ffdc" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (field_expression "abfd->start_address" identifier -> field_identifier) ))) ;) (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;) (expression_statement "in_EDX = extraout_EDX_05;" (assignment_expression "in_EDX = extraout_EDX_05" identifier = identifier) ;) })) (if_statement "if (dump_private_headers != 0) {\n    (*abfd->xvec->_bfd_print_private_bfd_data)(abfd,*(void **)PTR_stdout_0006ffdc);\n    in_EDX = extraout_EDX_00;\n  }" if (parenthesized_expression "(dump_private_headers != 0)" ( (binary_expression "dump_private_headers != 0" identifier != number_literal) )) (compound_statement "{\n    (*abfd->xvec->_bfd_print_private_bfd_data)(abfd,*(void **)PTR_stdout_0006ffdc);\n    in_EDX = extraout_EDX_00;\n  }" { (expression_statement "(*abfd->xvec->_bfd_print_private_bfd_data)(abfd,*(void **)PTR_stdout_0006ffdc);" (call_expression "(*abfd->xvec->_bfd_print_private_bfd_data)(abfd,*(void **)PTR_stdout_0006ffdc)" (parenthesized_expression "(*abfd->xvec->_bfd_print_private_bfd_data)" ( (pointer_expression "*abfd->xvec->_bfd_print_private_bfd_data" * (field_expression "abfd->xvec->_bfd_print_private_bfd_data" (field_expression "abfd->xvec" identifier -> field_identifier) -> field_identifier)) )) (argument_list "(abfd,*(void **)PTR_stdout_0006ffdc)" ( identifier , (pointer_expression "*(void **)PTR_stdout_0006ffdc" * (cast_expression "(void **)PTR_stdout_0006ffdc" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) (expression_statement "in_EDX = extraout_EDX_00;" (assignment_expression "in_EDX = extraout_EDX_00" identifier = identifier) ;) })) (if_statement "if (dump_private_options != (char *)0x0) {\n    pcVar3 = (char *)dcgettext(0,"option -P/--private not supported by this file",5);\n    non_fatal(pcVar3);\n    in_EDX = extraout_EDX;\n  }" if (parenthesized_expression "(dump_private_options != (char *)0x0)" ( (binary_expression "dump_private_options != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    pcVar3 = (char *)dcgettext(0,"option -P/--private not supported by this file",5);\n    non_fatal(pcVar3);\n    in_EDX = extraout_EDX;\n  }" { (expression_statement "pcVar3 = (char *)dcgettext(0,"option -P/--private not supported by this file",5);" (assignment_expression "pcVar3 = (char *)dcgettext(0,"option -P/--private not supported by this file",5)" identifier = (cast_expression "(char *)dcgettext(0,"option -P/--private not supported by this file",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"option -P/--private not supported by this file",5)" identifier (argument_list "(0,"option -P/--private not supported by this file",5)" ( number_literal , (string_literal ""option -P/--private not supported by this file"" " string_content ") , number_literal ))))) ;) (expression_statement "non_fatal(pcVar3);" (call_expression "non_fatal(pcVar3)" identifier (argument_list "(pcVar3)" ( identifier ))) ;) (expression_statement "in_EDX = extraout_EDX;" (assignment_expression "in_EDX = extraout_EDX" identifier = identifier) ;) })) (if_statement "if (dump_debugging_tags == 0 && suppress_bfd_header == 0) {\n    putc(10,*(FILE **)PTR_stdout_0006ffdc);\n    in_EDX = extraout_EDX_07;\n  }" if (parenthesized_expression "(dump_debugging_tags == 0 && suppress_bfd_header == 0)" ( (binary_expression "dump_debugging_tags == 0 && suppress_bfd_header == 0" (binary_expression "dump_debugging_tags == 0" identifier == number_literal) && (binary_expression "suppress_bfd_header == 0" identifier == number_literal)) )) (compound_statement "{\n    putc(10,*(FILE **)PTR_stdout_0006ffdc);\n    in_EDX = extraout_EDX_07;\n  }" { (expression_statement "putc(10,*(FILE **)PTR_stdout_0006ffdc);" (call_expression "putc(10,*(FILE **)PTR_stdout_0006ffdc)" identifier (argument_list "(10,*(FILE **)PTR_stdout_0006ffdc)" ( number_literal , (pointer_expression "*(FILE **)PTR_stdout_0006ffdc" * (cast_expression "(FILE **)PTR_stdout_0006ffdc" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) (expression_statement "in_EDX = extraout_EDX_07;" (assignment_expression "in_EDX = extraout_EDX_07" identifier = identifier) ;) })) (expression_statement "uVar25 = CONCAT44(in_EDX,symcount);" (assignment_expression "uVar25 = CONCAT44(in_EDX,symcount)" identifier = (call_expression "CONCAT44(in_EDX,symcount)" identifier (argument_list "(in_EDX,symcount)" ( identifier , identifier )))) ;) (expression_statement "ppaVar15 = syms;" (assignment_expression "ppaVar15 = syms" identifier = identifier) ;) (if_statement "if ((((dump_symtab != 0 || dump_reloc_info != 0) || disassemble != 0) || dump_debugging != 0) ||\n      dump_dwarf_section_info != 0) {\n    if ((abfd->field_0x29 & 2) == 0) {\n      uVar25 = (ulonglong)in_EDX << 0x20;\n      ppaVar15 = (asymbol **)0x0;\n    }\n    else {\n      lVar4 = (*abfd->xvec->_bfd_get_symtab_upper_bound)(abfd);\n      if (lVar4 < 0) {\n        pcVar3 = abfd->filename;\n        pcVar12 = (char *)dcgettext(0,"failed to read symbol table from: %s",5,lVar4);\n        non_fatal(pcVar12,pcVar3);\n        pcVar3 = (char *)dcgettext(0,"error message was",5);\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(pcVar3);\n      }\n      ppaVar15 = (bfd_symbol **)0x0;\n      if (lVar4 != 0) {\n        ppaVar15 = (asymbol **)xmalloc(lVar4);\n      }\n      uVar25 = (ulonglong)(*abfd->xvec->_bfd_canonicalize_symtab)(abfd,ppaVar15);\n      symcount = (long)uVar25;\n      if (symcount < 0) goto LAB_00017bfe;\n    }\n  }" if (parenthesized_expression "((((dump_symtab != 0 || dump_reloc_info != 0) || disassemble != 0) || dump_debugging != 0) ||\n      dump_dwarf_section_info != 0)" ( (binary_expression "(((dump_symtab != 0 || dump_reloc_info != 0) || disassemble != 0) || dump_debugging != 0) ||\n      dump_dwarf_section_info != 0" (parenthesized_expression "(((dump_symtab != 0 || dump_reloc_info != 0) || disassemble != 0) || dump_debugging != 0)" ( (binary_expression "((dump_symtab != 0 || dump_reloc_info != 0) || disassemble != 0) || dump_debugging != 0" (parenthesized_expression "((dump_symtab != 0 || dump_reloc_info != 0) || disassemble != 0)" ( (binary_expression "(dump_symtab != 0 || dump_reloc_info != 0) || disassemble != 0" (parenthesized_expression "(dump_symtab != 0 || dump_reloc_info != 0)" ( (binary_expression "dump_symtab != 0 || dump_reloc_info != 0" (binary_expression "dump_symtab != 0" identifier != number_literal) || (binary_expression "dump_reloc_info != 0" identifier != number_literal)) )) || (binary_expression "disassemble != 0" identifier != number_literal)) )) || (binary_expression "dump_debugging != 0" identifier != number_literal)) )) || (binary_expression "dump_dwarf_section_info != 0" identifier != number_literal)) )) (compound_statement "{\n    if ((abfd->field_0x29 & 2) == 0) {\n      uVar25 = (ulonglong)in_EDX << 0x20;\n      ppaVar15 = (asymbol **)0x0;\n    }\n    else {\n      lVar4 = (*abfd->xvec->_bfd_get_symtab_upper_bound)(abfd);\n      if (lVar4 < 0) {\n        pcVar3 = abfd->filename;\n        pcVar12 = (char *)dcgettext(0,"failed to read symbol table from: %s",5,lVar4);\n        non_fatal(pcVar12,pcVar3);\n        pcVar3 = (char *)dcgettext(0,"error message was",5);\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(pcVar3);\n      }\n      ppaVar15 = (bfd_symbol **)0x0;\n      if (lVar4 != 0) {\n        ppaVar15 = (asymbol **)xmalloc(lVar4);\n      }\n      uVar25 = (ulonglong)(*abfd->xvec->_bfd_canonicalize_symtab)(abfd,ppaVar15);\n      symcount = (long)uVar25;\n      if (symcount < 0) goto LAB_00017bfe;\n    }\n  }" { (if_statement "if ((abfd->field_0x29 & 2) == 0) {\n      uVar25 = (ulonglong)in_EDX << 0x20;\n      ppaVar15 = (asymbol **)0x0;\n    }\n    else {\n      lVar4 = (*abfd->xvec->_bfd_get_symtab_upper_bound)(abfd);\n      if (lVar4 < 0) {\n        pcVar3 = abfd->filename;\n        pcVar12 = (char *)dcgettext(0,"failed to read symbol table from: %s",5,lVar4);\n        non_fatal(pcVar12,pcVar3);\n        pcVar3 = (char *)dcgettext(0,"error message was",5);\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(pcVar3);\n      }\n      ppaVar15 = (bfd_symbol **)0x0;\n      if (lVar4 != 0) {\n        ppaVar15 = (asymbol **)xmalloc(lVar4);\n      }\n      uVar25 = (ulonglong)(*abfd->xvec->_bfd_canonicalize_symtab)(abfd,ppaVar15);\n      symcount = (long)uVar25;\n      if (symcount < 0) goto LAB_00017bfe;\n    }" if (parenthesized_expression "((abfd->field_0x29 & 2) == 0)" ( (binary_expression "(abfd->field_0x29 & 2) == 0" (parenthesized_expression "(abfd->field_0x29 & 2)" ( (binary_expression "abfd->field_0x29 & 2" (field_expression "abfd->field_0x29" identifier -> field_identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n      uVar25 = (ulonglong)in_EDX << 0x20;\n      ppaVar15 = (asymbol **)0x0;\n    }" { (expression_statement "uVar25 = (ulonglong)in_EDX << 0x20;" (assignment_expression "uVar25 = (ulonglong)in_EDX << 0x20" identifier = (binary_expression "(ulonglong)in_EDX << 0x20" (cast_expression "(ulonglong)in_EDX" ( (type_descriptor "ulonglong" type_identifier) ) identifier) << number_literal)) ;) (expression_statement "ppaVar15 = (asymbol **)0x0;" (assignment_expression "ppaVar15 = (asymbol **)0x0" identifier = (cast_expression "(asymbol **)0x0" ( (type_descriptor "asymbol **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) }) (else_clause "else {\n      lVar4 = (*abfd->xvec->_bfd_get_symtab_upper_bound)(abfd);\n      if (lVar4 < 0) {\n        pcVar3 = abfd->filename;\n        pcVar12 = (char *)dcgettext(0,"failed to read symbol table from: %s",5,lVar4);\n        non_fatal(pcVar12,pcVar3);\n        pcVar3 = (char *)dcgettext(0,"error message was",5);\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(pcVar3);\n      }\n      ppaVar15 = (bfd_symbol **)0x0;\n      if (lVar4 != 0) {\n        ppaVar15 = (asymbol **)xmalloc(lVar4);\n      }\n      uVar25 = (ulonglong)(*abfd->xvec->_bfd_canonicalize_symtab)(abfd,ppaVar15);\n      symcount = (long)uVar25;\n      if (symcount < 0) goto LAB_00017bfe;\n    }" else (compound_statement "{\n      lVar4 = (*abfd->xvec->_bfd_get_symtab_upper_bound)(abfd);\n      if (lVar4 < 0) {\n        pcVar3 = abfd->filename;\n        pcVar12 = (char *)dcgettext(0,"failed to read symbol table from: %s",5,lVar4);\n        non_fatal(pcVar12,pcVar3);\n        pcVar3 = (char *)dcgettext(0,"error message was",5);\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(pcVar3);\n      }\n      ppaVar15 = (bfd_symbol **)0x0;\n      if (lVar4 != 0) {\n        ppaVar15 = (asymbol **)xmalloc(lVar4);\n      }\n      uVar25 = (ulonglong)(*abfd->xvec->_bfd_canonicalize_symtab)(abfd,ppaVar15);\n      symcount = (long)uVar25;\n      if (symcount < 0) goto LAB_00017bfe;\n    }" { (expression_statement "lVar4 = (*abfd->xvec->_bfd_get_symtab_upper_bound)(abfd);" (assignment_expression "lVar4 = (*abfd->xvec->_bfd_get_symtab_upper_bound)(abfd)" identifier = (call_expression "(*abfd->xvec->_bfd_get_symtab_upper_bound)(abfd)" (parenthesized_expression "(*abfd->xvec->_bfd_get_symtab_upper_bound)" ( (pointer_expression "*abfd->xvec->_bfd_get_symtab_upper_bound" * (field_expression "abfd->xvec->_bfd_get_symtab_upper_bound" (field_expression "abfd->xvec" identifier -> field_identifier) -> field_identifier)) )) (argument_list "(abfd)" ( identifier )))) ;) (if_statement "if (lVar4 < 0) {\n        pcVar3 = abfd->filename;\n        pcVar12 = (char *)dcgettext(0,"failed to read symbol table from: %s",5,lVar4);\n        non_fatal(pcVar12,pcVar3);\n        pcVar3 = (char *)dcgettext(0,"error message was",5);\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(pcVar3);\n      }" if (parenthesized_expression "(lVar4 < 0)" ( (binary_expression "lVar4 < 0" identifier < number_literal) )) (compound_statement "{\n        pcVar3 = abfd->filename;\n        pcVar12 = (char *)dcgettext(0,"failed to read symbol table from: %s",5,lVar4);\n        non_fatal(pcVar12,pcVar3);\n        pcVar3 = (char *)dcgettext(0,"error message was",5);\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(pcVar3);\n      }" { (expression_statement "pcVar3 = abfd->filename;" (assignment_expression "pcVar3 = abfd->filename" identifier = (field_expression "abfd->filename" identifier -> field_identifier)) ;) (expression_statement "pcVar12 = (char *)dcgettext(0,"failed to read symbol table from: %s",5,lVar4);" (assignment_expression "pcVar12 = (char *)dcgettext(0,"failed to read symbol table from: %s",5,lVar4)" identifier = (cast_expression "(char *)dcgettext(0,"failed to read symbol table from: %s",5,lVar4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"failed to read symbol table from: %s",5,lVar4)" identifier (argument_list "(0,"failed to read symbol table from: %s",5,lVar4)" ( number_literal , (string_literal ""failed to read symbol table from: %s"" " string_content ") , number_literal , identifier ))))) ;) (expression_statement "non_fatal(pcVar12,pcVar3);" (call_expression "non_fatal(pcVar12,pcVar3)" identifier (argument_list "(pcVar12,pcVar3)" ( identifier , identifier ))) ;) (expression_statement "pcVar3 = (char *)dcgettext(0,"error message was",5);" (assignment_expression "pcVar3 = (char *)dcgettext(0,"error message was",5)" identifier = (cast_expression "(char *)dcgettext(0,"error message was",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"error message was",5)" identifier (argument_list "(0,"error message was",5)" ( number_literal , (string_literal ""error message was"" " string_content ") , number_literal ))))) ;) comment (expression_statement "bfd_fatal(pcVar3);" (call_expression "bfd_fatal(pcVar3)" identifier (argument_list "(pcVar3)" ( identifier ))) ;) })) (expression_statement "ppaVar15 = (bfd_symbol **)0x0;" (assignment_expression "ppaVar15 = (bfd_symbol **)0x0" identifier = (cast_expression "(bfd_symbol **)0x0" ( (type_descriptor "bfd_symbol **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (if_statement "if (lVar4 != 0) {\n        ppaVar15 = (asymbol **)xmalloc(lVar4);\n      }" if (parenthesized_expression "(lVar4 != 0)" ( (binary_expression "lVar4 != 0" identifier != number_literal) )) (compound_statement "{\n        ppaVar15 = (asymbol **)xmalloc(lVar4);\n      }" { (expression_statement "ppaVar15 = (asymbol **)xmalloc(lVar4);" (assignment_expression "ppaVar15 = (asymbol **)xmalloc(lVar4)" identifier = (cast_expression "(asymbol **)xmalloc(lVar4)" ( (type_descriptor "asymbol **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "xmalloc(lVar4)" identifier (argument_list "(lVar4)" ( identifier ))))) ;) })) (expression_statement "uVar25 = (ulonglong)(*abfd->xvec->_bfd_canonicalize_symtab)(abfd,ppaVar15);" (assignment_expression "uVar25 = (ulonglong)(*abfd->xvec->_bfd_canonicalize_symtab)(abfd,ppaVar15)" identifier = (call_expression "(ulonglong)(*abfd->xvec->_bfd_canonicalize_symtab)(abfd,ppaVar15)" (call_expression "(ulonglong)(*abfd->xvec->_bfd_canonicalize_symtab)" (parenthesized_expression "(ulonglong)" ( identifier )) (argument_list "(*abfd->xvec->_bfd_canonicalize_symtab)" ( (pointer_expression "*abfd->xvec->_bfd_canonicalize_symtab" * (field_expression "abfd->xvec->_bfd_canonicalize_symtab" (field_expression "abfd->xvec" identifier -> field_identifier) -> field_identifier)) ))) (argument_list "(abfd,ppaVar15)" ( identifier , identifier )))) ;) (expression_statement "symcount = (long)uVar25;" (assignment_expression "symcount = (long)uVar25" identifier = (cast_expression "(long)uVar25" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ;) (if_statement "if (symcount < 0) goto LAB_00017bfe;" if (parenthesized_expression "(symcount < 0)" ( (binary_expression "symcount < 0" identifier < number_literal) )) (goto_statement "goto LAB_00017bfe;" goto statement_identifier ;)) }))) })) (expression_statement "syms = ppaVar15;" (assignment_expression "syms = ppaVar15" identifier = identifier) ;) (expression_statement "symcount = (long)uVar25;" (assignment_expression "symcount = (long)uVar25" identifier = (cast_expression "(long)uVar25" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ;) (if_statement "if (dump_section_headers != 0) {\n    has_reloc = 0xd;\n    pcVar3 = (char *)dcgettext(0,"Sections:\n",5);\n    printf(pcVar3);\n    if (wide_output != 0) {\n      bfd_map_over_sections(abfd,find_longest_section_name,&has_reloc);\n    }\n    bVar11 = has_reloc;\n    pcVar3 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);\n    printf(pcVar3,bVar11,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);\n    if (wide_output != 0) {\n      pcVar3 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar3);\n    }\n    putchar(10);\n    bfd_map_over_sections(abfd,dump_section_header,&has_reloc);\n    uVar25 = CONCAT44(extraout_EDX_06,symcount);\n  }" if (parenthesized_expression "(dump_section_headers != 0)" ( (binary_expression "dump_section_headers != 0" identifier != number_literal) )) (compound_statement "{\n    has_reloc = 0xd;\n    pcVar3 = (char *)dcgettext(0,"Sections:\n",5);\n    printf(pcVar3);\n    if (wide_output != 0) {\n      bfd_map_over_sections(abfd,find_longest_section_name,&has_reloc);\n    }\n    bVar11 = has_reloc;\n    pcVar3 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);\n    printf(pcVar3,bVar11,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);\n    if (wide_output != 0) {\n      pcVar3 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar3);\n    }\n    putchar(10);\n    bfd_map_over_sections(abfd,dump_section_header,&has_reloc);\n    uVar25 = CONCAT44(extraout_EDX_06,symcount);\n  }" { (expression_statement "has_reloc = 0xd;" (assignment_expression "has_reloc = 0xd" identifier = number_literal) ;) (expression_statement "pcVar3 = (char *)dcgettext(0,"Sections:\n",5);" (assignment_expression "pcVar3 = (char *)dcgettext(0,"Sections:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Sections:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Sections:\n",5)" identifier (argument_list "(0,"Sections:\n",5)" ( number_literal , (string_literal ""Sections:\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar3);" (call_expression "printf(pcVar3)" identifier (argument_list "(pcVar3)" ( identifier ))) ;) (if_statement "if (wide_output != 0) {\n      bfd_map_over_sections(abfd,find_longest_section_name,&has_reloc);\n    }" if (parenthesized_expression "(wide_output != 0)" ( (binary_expression "wide_output != 0" identifier != number_literal) )) (compound_statement "{\n      bfd_map_over_sections(abfd,find_longest_section_name,&has_reloc);\n    }" { (expression_statement "bfd_map_over_sections(abfd,find_longest_section_name,&has_reloc);" (call_expression "bfd_map_over_sections(abfd,find_longest_section_name,&has_reloc)" identifier (argument_list "(abfd,find_longest_section_name,&has_reloc)" ( identifier , identifier , (pointer_expression "&has_reloc" & identifier) ))) ;) })) (expression_statement "bVar11 = has_reloc;" (assignment_expression "bVar11 = has_reloc" identifier = identifier) ;) (expression_statement "pcVar3 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);" (assignment_expression "pcVar3 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5)" identifier = (cast_expression "(char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5)" identifier (argument_list "(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5)" ( number_literal , (string_literal ""Idx %-*s Size      %-*s%-*sFile off  Algn"" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar3,bVar11,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);" (call_expression "printf(pcVar3,bVar11,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8)" identifier (argument_list "(pcVar3,bVar11,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8)" ( identifier , identifier , (string_literal ""Name"" " string_content ") , number_literal , (pointer_expression "&DAT_0004c7fc" & identifier) , number_literal , (pointer_expression "&DAT_0004c7f8" & identifier) ))) ;) (if_statement "if (wide_output != 0) {\n      pcVar3 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar3);\n    }" if (parenthesized_expression "(wide_output != 0)" ( (binary_expression "wide_output != 0" identifier != number_literal) )) (compound_statement "{\n      pcVar3 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar3);\n    }" { (expression_statement "pcVar3 = (char *)dcgettext(0,"  Flags",5);" (assignment_expression "pcVar3 = (char *)dcgettext(0,"  Flags",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Flags",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Flags",5)" identifier (argument_list "(0,"  Flags",5)" ( number_literal , (string_literal ""  Flags"" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar3);" (call_expression "printf(pcVar3)" identifier (argument_list "(pcVar3)" ( identifier ))) ;) })) (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;) (expression_statement "bfd_map_over_sections(abfd,dump_section_header,&has_reloc);" (call_expression "bfd_map_over_sections(abfd,dump_section_header,&has_reloc)" identifier (argument_list "(abfd,dump_section_header,&has_reloc)" ( identifier , identifier , (pointer_expression "&has_reloc" & identifier) ))) ;) (expression_statement "uVar25 = CONCAT44(extraout_EDX_06,symcount);" (assignment_expression "uVar25 = CONCAT44(extraout_EDX_06,symcount)" identifier = (call_expression "CONCAT44(extraout_EDX_06,symcount)" identifier (argument_list "(extraout_EDX_06,symcount)" ( identifier , identifier )))) ;) })) (expression_statement "symcount = (long)uVar25;" (assignment_expression "symcount = (long)uVar25" identifier = (cast_expression "(long)uVar25" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ;) (if_statement "if (dump_dynamic_symtab == 0 && dump_dynamic_reloc_info == 0) {\n    if (disassemble != 0) {\n      lVar4 = (*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound)(abfd);\n      lVar26 = CONCAT44((int)((ulonglong)lVar4 >> 0x20),dynsymcount);\n      ppaVar15 = dynsyms;\n      if (0 < (int)lVar4) goto LAB_000170fd;\n      goto LAB_00017145;\n    }\n  }\n  else {\nLAB_000170fd:\n    lVar4 = (*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound)(abfd);\n    if (lVar4 < 0) {\n      pcVar3 = abfd->filename;\n      if ((abfd->field_0x29 & 8) != 0) {\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(pcVar3);\n      }\n      pcVar12 = (char *)dcgettext(0,"%s: not a dynamic object",5);\n      non_fatal(pcVar12,pcVar3);\n      exit_status = 1;\n      lVar26 = (ulonglong)extraout_EDX_01 << 0x20;\n      ppaVar15 = (asymbol **)0x0;\n    }\n    else {\n      ppaVar15 = (bfd_symbol **)0x0;\n      if (lVar4 != 0) {\n        ppaVar15 = (asymbol **)xmalloc(lVar4);\n      }\n      lVar26 = (longlong)(*abfd->xvec->_bfd_canonicalize_dynamic_symtab)(abfd,ppaVar15);\n      dynsymcount = (long)lVar26;\n      if (dynsymcount < 0) goto LAB_00017bfe;\n    }\nLAB_00017145:\n    dynsyms = ppaVar15;\n    dynsymcount = (long)lVar26;\n    uVar25 = CONCAT44((int)((ulonglong)lVar26 >> 0x20),symcount);\n    if (disassemble != 0) {\n      synthcount = (*abfd->xvec->_bfd_get_synthetic_symtab)\n                             (abfd,symcount,syms,dynsymcount,dynsyms,&synthsyms);\n      uVar25 = (ulonglong)(uint)symcount;\n      if (synthcount < 0) {\n        synthcount = 0;\n        uVar25 = (ulonglong)(uint)symcount;\n      }\n    }\n  }" if (parenthesized_expression "(dump_dynamic_symtab == 0 && dump_dynamic_reloc_info == 0)" ( (binary_expression "dump_dynamic_symtab == 0 && dump_dynamic_reloc_info == 0" (binary_expression "dump_dynamic_symtab == 0" identifier == number_literal) && (binary_expression "dump_dynamic_reloc_info == 0" identifier == number_literal)) )) (compound_statement "{\n    if (disassemble != 0) {\n      lVar4 = (*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound)(abfd);\n      lVar26 = CONCAT44((int)((ulonglong)lVar4 >> 0x20),dynsymcount);\n      ppaVar15 = dynsyms;\n      if (0 < (int)lVar4) goto LAB_000170fd;\n      goto LAB_00017145;\n    }\n  }" { (if_statement "if (disassemble != 0) {\n      lVar4 = (*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound)(abfd);\n      lVar26 = CONCAT44((int)((ulonglong)lVar4 >> 0x20),dynsymcount);\n      ppaVar15 = dynsyms;\n      if (0 < (int)lVar4) goto LAB_000170fd;\n      goto LAB_00017145;\n    }" if (parenthesized_expression "(disassemble != 0)" ( (binary_expression "disassemble != 0" identifier != number_literal) )) (compound_statement "{\n      lVar4 = (*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound)(abfd);\n      lVar26 = CONCAT44((int)((ulonglong)lVar4 >> 0x20),dynsymcount);\n      ppaVar15 = dynsyms;\n      if (0 < (int)lVar4) goto LAB_000170fd;\n      goto LAB_00017145;\n    }" { (expression_statement "lVar4 = (*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound)(abfd);" (assignment_expression "lVar4 = (*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound)(abfd)" identifier = (call_expression "(*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound)(abfd)" (parenthesized_expression "(*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound)" ( (pointer_expression "*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound" * (field_expression "abfd->xvec->_bfd_get_dynamic_symtab_upper_bound" (field_expression "abfd->xvec" identifier -> field_identifier) -> field_identifier)) )) (argument_list "(abfd)" ( identifier )))) ;) (expression_statement "lVar26 = CONCAT44((int)((ulonglong)lVar4 >> 0x20),dynsymcount);" (assignment_expression "lVar26 = CONCAT44((int)((ulonglong)lVar4 >> 0x20),dynsymcount)" identifier = (call_expression "CONCAT44((int)((ulonglong)lVar4 >> 0x20),dynsymcount)" identifier (argument_list "((int)((ulonglong)lVar4 >> 0x20),dynsymcount)" ( (cast_expression "(int)((ulonglong)lVar4 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar4 >> 0x20)" ( (binary_expression "(ulonglong)lVar4 >> 0x20" (cast_expression "(ulonglong)lVar4" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) , identifier )))) ;) (expression_statement "ppaVar15 = dynsyms;" (assignment_expression "ppaVar15 = dynsyms" identifier = identifier) ;) (if_statement "if (0 < (int)lVar4) goto LAB_000170fd;" if (parenthesized_expression "(0 < (int)lVar4)" ( (binary_expression "0 < (int)lVar4" number_literal < (cast_expression "(int)lVar4" ( (type_descriptor "int" primitive_type) ) identifier)) )) (goto_statement "goto LAB_000170fd;" goto statement_identifier ;)) (goto_statement "goto LAB_00017145;" goto statement_identifier ;) })) }) (else_clause "else {\nLAB_000170fd:\n    lVar4 = (*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound)(abfd);\n    if (lVar4 < 0) {\n      pcVar3 = abfd->filename;\n      if ((abfd->field_0x29 & 8) != 0) {\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(pcVar3);\n      }\n      pcVar12 = (char *)dcgettext(0,"%s: not a dynamic object",5);\n      non_fatal(pcVar12,pcVar3);\n      exit_status = 1;\n      lVar26 = (ulonglong)extraout_EDX_01 << 0x20;\n      ppaVar15 = (asymbol **)0x0;\n    }\n    else {\n      ppaVar15 = (bfd_symbol **)0x0;\n      if (lVar4 != 0) {\n        ppaVar15 = (asymbol **)xmalloc(lVar4);\n      }\n      lVar26 = (longlong)(*abfd->xvec->_bfd_canonicalize_dynamic_symtab)(abfd,ppaVar15);\n      dynsymcount = (long)lVar26;\n      if (dynsymcount < 0) goto LAB_00017bfe;\n    }\nLAB_00017145:\n    dynsyms = ppaVar15;\n    dynsymcount = (long)lVar26;\n    uVar25 = CONCAT44((int)((ulonglong)lVar26 >> 0x20),symcount);\n    if (disassemble != 0) {\n      synthcount = (*abfd->xvec->_bfd_get_synthetic_symtab)\n                             (abfd,symcount,syms,dynsymcount,dynsyms,&synthsyms);\n      uVar25 = (ulonglong)(uint)symcount;\n      if (synthcount < 0) {\n        synthcount = 0;\n        uVar25 = (ulonglong)(uint)symcount;\n      }\n    }\n  }" else (compound_statement "{\nLAB_000170fd:\n    lVar4 = (*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound)(abfd);\n    if (lVar4 < 0) {\n      pcVar3 = abfd->filename;\n      if ((abfd->field_0x29 & 8) != 0) {\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(pcVar3);\n      }\n      pcVar12 = (char *)dcgettext(0,"%s: not a dynamic object",5);\n      non_fatal(pcVar12,pcVar3);\n      exit_status = 1;\n      lVar26 = (ulonglong)extraout_EDX_01 << 0x20;\n      ppaVar15 = (asymbol **)0x0;\n    }\n    else {\n      ppaVar15 = (bfd_symbol **)0x0;\n      if (lVar4 != 0) {\n        ppaVar15 = (asymbol **)xmalloc(lVar4);\n      }\n      lVar26 = (longlong)(*abfd->xvec->_bfd_canonicalize_dynamic_symtab)(abfd,ppaVar15);\n      dynsymcount = (long)lVar26;\n      if (dynsymcount < 0) goto LAB_00017bfe;\n    }\nLAB_00017145:\n    dynsyms = ppaVar15;\n    dynsymcount = (long)lVar26;\n    uVar25 = CONCAT44((int)((ulonglong)lVar26 >> 0x20),symcount);\n    if (disassemble != 0) {\n      synthcount = (*abfd->xvec->_bfd_get_synthetic_symtab)\n                             (abfd,symcount,syms,dynsymcount,dynsyms,&synthsyms);\n      uVar25 = (ulonglong)(uint)symcount;\n      if (synthcount < 0) {\n        synthcount = 0;\n        uVar25 = (ulonglong)(uint)symcount;\n      }\n    }\n  }" { (labeled_statement "LAB_000170fd:\n    lVar4 = (*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound)(abfd);" statement_identifier : (expression_statement "lVar4 = (*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound)(abfd);" (assignment_expression "lVar4 = (*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound)(abfd)" identifier = (call_expression "(*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound)(abfd)" (parenthesized_expression "(*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound)" ( (pointer_expression "*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound" * (field_expression "abfd->xvec->_bfd_get_dynamic_symtab_upper_bound" (field_expression "abfd->xvec" identifier -> field_identifier) -> field_identifier)) )) (argument_list "(abfd)" ( identifier )))) ;)) (if_statement "if (lVar4 < 0) {\n      pcVar3 = abfd->filename;\n      if ((abfd->field_0x29 & 8) != 0) {\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(pcVar3);\n      }\n      pcVar12 = (char *)dcgettext(0,"%s: not a dynamic object",5);\n      non_fatal(pcVar12,pcVar3);\n      exit_status = 1;\n      lVar26 = (ulonglong)extraout_EDX_01 << 0x20;\n      ppaVar15 = (asymbol **)0x0;\n    }\n    else {\n      ppaVar15 = (bfd_symbol **)0x0;\n      if (lVar4 != 0) {\n        ppaVar15 = (asymbol **)xmalloc(lVar4);\n      }\n      lVar26 = (longlong)(*abfd->xvec->_bfd_canonicalize_dynamic_symtab)(abfd,ppaVar15);\n      dynsymcount = (long)lVar26;\n      if (dynsymcount < 0) goto LAB_00017bfe;\n    }" if (parenthesized_expression "(lVar4 < 0)" ( (binary_expression "lVar4 < 0" identifier < number_literal) )) (compound_statement "{\n      pcVar3 = abfd->filename;\n      if ((abfd->field_0x29 & 8) != 0) {\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(pcVar3);\n      }\n      pcVar12 = (char *)dcgettext(0,"%s: not a dynamic object",5);\n      non_fatal(pcVar12,pcVar3);\n      exit_status = 1;\n      lVar26 = (ulonglong)extraout_EDX_01 << 0x20;\n      ppaVar15 = (asymbol **)0x0;\n    }" { (expression_statement "pcVar3 = abfd->filename;" (assignment_expression "pcVar3 = abfd->filename" identifier = (field_expression "abfd->filename" identifier -> field_identifier)) ;) (if_statement "if ((abfd->field_0x29 & 8) != 0) {\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(pcVar3);\n      }" if (parenthesized_expression "((abfd->field_0x29 & 8) != 0)" ( (binary_expression "(abfd->field_0x29 & 8) != 0" (parenthesized_expression "(abfd->field_0x29 & 8)" ( (binary_expression "abfd->field_0x29 & 8" (field_expression "abfd->field_0x29" identifier -> field_identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(pcVar3);\n      }" { comment (expression_statement "bfd_fatal(pcVar3);" (call_expression "bfd_fatal(pcVar3)" identifier (argument_list "(pcVar3)" ( identifier ))) ;) })) (expression_statement "pcVar12 = (char *)dcgettext(0,"%s: not a dynamic object",5);" (assignment_expression "pcVar12 = (char *)dcgettext(0,"%s: not a dynamic object",5)" identifier = (cast_expression "(char *)dcgettext(0,"%s: not a dynamic object",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"%s: not a dynamic object",5)" identifier (argument_list "(0,"%s: not a dynamic object",5)" ( number_literal , (string_literal ""%s: not a dynamic object"" " string_content ") , number_literal ))))) ;) (expression_statement "non_fatal(pcVar12,pcVar3);" (call_expression "non_fatal(pcVar12,pcVar3)" identifier (argument_list "(pcVar12,pcVar3)" ( identifier , identifier ))) ;) (expression_statement "exit_status = 1;" (assignment_expression "exit_status = 1" identifier = number_literal) ;) (expression_statement "lVar26 = (ulonglong)extraout_EDX_01 << 0x20;" (assignment_expression "lVar26 = (ulonglong)extraout_EDX_01 << 0x20" identifier = (binary_expression "(ulonglong)extraout_EDX_01 << 0x20" (cast_expression "(ulonglong)extraout_EDX_01" ( (type_descriptor "ulonglong" type_identifier) ) identifier) << number_literal)) ;) (expression_statement "ppaVar15 = (asymbol **)0x0;" (assignment_expression "ppaVar15 = (asymbol **)0x0" identifier = (cast_expression "(asymbol **)0x0" ( (type_descriptor "asymbol **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) }) (else_clause "else {\n      ppaVar15 = (bfd_symbol **)0x0;\n      if (lVar4 != 0) {\n        ppaVar15 = (asymbol **)xmalloc(lVar4);\n      }\n      lVar26 = (longlong)(*abfd->xvec->_bfd_canonicalize_dynamic_symtab)(abfd,ppaVar15);\n      dynsymcount = (long)lVar26;\n      if (dynsymcount < 0) goto LAB_00017bfe;\n    }" else (compound_statement "{\n      ppaVar15 = (bfd_symbol **)0x0;\n      if (lVar4 != 0) {\n        ppaVar15 = (asymbol **)xmalloc(lVar4);\n      }\n      lVar26 = (longlong)(*abfd->xvec->_bfd_canonicalize_dynamic_symtab)(abfd,ppaVar15);\n      dynsymcount = (long)lVar26;\n      if (dynsymcount < 0) goto LAB_00017bfe;\n    }" { (expression_statement "ppaVar15 = (bfd_symbol **)0x0;" (assignment_expression "ppaVar15 = (bfd_symbol **)0x0" identifier = (cast_expression "(bfd_symbol **)0x0" ( (type_descriptor "bfd_symbol **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (if_statement "if (lVar4 != 0) {\n        ppaVar15 = (asymbol **)xmalloc(lVar4);\n      }" if (parenthesized_expression "(lVar4 != 0)" ( (binary_expression "lVar4 != 0" identifier != number_literal) )) (compound_statement "{\n        ppaVar15 = (asymbol **)xmalloc(lVar4);\n      }" { (expression_statement "ppaVar15 = (asymbol **)xmalloc(lVar4);" (assignment_expression "ppaVar15 = (asymbol **)xmalloc(lVar4)" identifier = (cast_expression "(asymbol **)xmalloc(lVar4)" ( (type_descriptor "asymbol **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "xmalloc(lVar4)" identifier (argument_list "(lVar4)" ( identifier ))))) ;) })) (expression_statement "lVar26 = (longlong)(*abfd->xvec->_bfd_canonicalize_dynamic_symtab)(abfd,ppaVar15);" (assignment_expression "lVar26 = (longlong)(*abfd->xvec->_bfd_canonicalize_dynamic_symtab)(abfd,ppaVar15)" identifier = (call_expression "(longlong)(*abfd->xvec->_bfd_canonicalize_dynamic_symtab)(abfd,ppaVar15)" (call_expression "(longlong)(*abfd->xvec->_bfd_canonicalize_dynamic_symtab)" (parenthesized_expression "(longlong)" ( identifier )) (argument_list "(*abfd->xvec->_bfd_canonicalize_dynamic_symtab)" ( (pointer_expression "*abfd->xvec->_bfd_canonicalize_dynamic_symtab" * (field_expression "abfd->xvec->_bfd_canonicalize_dynamic_symtab" (field_expression "abfd->xvec" identifier -> field_identifier) -> field_identifier)) ))) (argument_list "(abfd,ppaVar15)" ( identifier , identifier )))) ;) (expression_statement "dynsymcount = (long)lVar26;" (assignment_expression "dynsymcount = (long)lVar26" identifier = (cast_expression "(long)lVar26" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ;) (if_statement "if (dynsymcount < 0) goto LAB_00017bfe;" if (parenthesized_expression "(dynsymcount < 0)" ( (binary_expression "dynsymcount < 0" identifier < number_literal) )) (goto_statement "goto LAB_00017bfe;" goto statement_identifier ;)) }))) (labeled_statement "LAB_00017145:\n    dynsyms = ppaVar15;" statement_identifier : (expression_statement "dynsyms = ppaVar15;" (assignment_expression "dynsyms = ppaVar15" identifier = identifier) ;)) (expression_statement "dynsymcount = (long)lVar26;" (assignment_expression "dynsymcount = (long)lVar26" identifier = (cast_expression "(long)lVar26" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ;) (expression_statement "uVar25 = CONCAT44((int)((ulonglong)lVar26 >> 0x20),symcount);" (assignment_expression "uVar25 = CONCAT44((int)((ulonglong)lVar26 >> 0x20),symcount)" identifier = (call_expression "CONCAT44((int)((ulonglong)lVar26 >> 0x20),symcount)" identifier (argument_list "((int)((ulonglong)lVar26 >> 0x20),symcount)" ( (cast_expression "(int)((ulonglong)lVar26 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar26 >> 0x20)" ( (binary_expression "(ulonglong)lVar26 >> 0x20" (cast_expression "(ulonglong)lVar26" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) , identifier )))) ;) (if_statement "if (disassemble != 0) {\n      synthcount = (*abfd->xvec->_bfd_get_synthetic_symtab)\n                             (abfd,symcount,syms,dynsymcount,dynsyms,&synthsyms);\n      uVar25 = (ulonglong)(uint)symcount;\n      if (synthcount < 0) {\n        synthcount = 0;\n        uVar25 = (ulonglong)(uint)symcount;\n      }\n    }" if (parenthesized_expression "(disassemble != 0)" ( (binary_expression "disassemble != 0" identifier != number_literal) )) (compound_statement "{\n      synthcount = (*abfd->xvec->_bfd_get_synthetic_symtab)\n                             (abfd,symcount,syms,dynsymcount,dynsyms,&synthsyms);\n      uVar25 = (ulonglong)(uint)symcount;\n      if (synthcount < 0) {\n        synthcount = 0;\n        uVar25 = (ulonglong)(uint)symcount;\n      }\n    }" { (expression_statement "synthcount = (*abfd->xvec->_bfd_get_synthetic_symtab)\n                             (abfd,symcount,syms,dynsymcount,dynsyms,&synthsyms);" (assignment_expression "synthcount = (*abfd->xvec->_bfd_get_synthetic_symtab)\n                             (abfd,symcount,syms,dynsymcount,dynsyms,&synthsyms)" identifier = (call_expression "(*abfd->xvec->_bfd_get_synthetic_symtab)\n                             (abfd,symcount,syms,dynsymcount,dynsyms,&synthsyms)" (parenthesized_expression "(*abfd->xvec->_bfd_get_synthetic_symtab)" ( (pointer_expression "*abfd->xvec->_bfd_get_synthetic_symtab" * (field_expression "abfd->xvec->_bfd_get_synthetic_symtab" (field_expression "abfd->xvec" identifier -> field_identifier) -> field_identifier)) )) (argument_list "(abfd,symcount,syms,dynsymcount,dynsyms,&synthsyms)" ( identifier , identifier , identifier , identifier , identifier , (pointer_expression "&synthsyms" & identifier) )))) ;) (expression_statement "uVar25 = (ulonglong)(uint)symcount;" (assignment_expression "uVar25 = (ulonglong)(uint)symcount" identifier = (cast_expression "(ulonglong)(uint)symcount" ( (type_descriptor "ulonglong" type_identifier) ) (cast_expression "(uint)symcount" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (if_statement "if (synthcount < 0) {\n        synthcount = 0;\n        uVar25 = (ulonglong)(uint)symcount;\n      }" if (parenthesized_expression "(synthcount < 0)" ( (binary_expression "synthcount < 0" identifier < number_literal) )) (compound_statement "{\n        synthcount = 0;\n        uVar25 = (ulonglong)(uint)symcount;\n      }" { (expression_statement "synthcount = 0;" (assignment_expression "synthcount = 0" identifier = number_literal) ;) (expression_statement "uVar25 = (ulonglong)(uint)symcount;" (assignment_expression "uVar25 = (ulonglong)(uint)symcount" identifier = (cast_expression "(ulonglong)(uint)symcount" ( (type_descriptor "ulonglong" type_identifier) ) (cast_expression "(uint)symcount" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) })) })) }))) (expression_statement "symcount = (long)uVar25;" (assignment_expression "symcount = (long)uVar25" identifier = (cast_expression "(long)uVar25" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ;) (if_statement "if (dump_symtab != 0) {\n    dump_symbols((bfd *)0x0,(bfd_boolean)(uVar25 >> 0x20));\n  }" if (parenthesized_expression "(dump_symtab != 0)" ( (binary_expression "dump_symtab != 0" identifier != number_literal) )) (compound_statement "{\n    dump_symbols((bfd *)0x0,(bfd_boolean)(uVar25 >> 0x20));\n  }" { (expression_statement "dump_symbols((bfd *)0x0,(bfd_boolean)(uVar25 >> 0x20));" (call_expression "dump_symbols((bfd *)0x0,(bfd_boolean)(uVar25 >> 0x20))" identifier (argument_list "((bfd *)0x0,(bfd_boolean)(uVar25 >> 0x20))" ( (cast_expression "(bfd *)0x0" ( (type_descriptor "bfd *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) , (call_expression "(bfd_boolean)(uVar25 >> 0x20)" (parenthesized_expression "(bfd_boolean)" ( identifier )) (argument_list "(uVar25 >> 0x20)" ( (binary_expression "uVar25 >> 0x20" identifier >> number_literal) ))) ))) ;) })) (if_statement "if (dump_dynamic_symtab != 0) {\n    dump_symbols((bfd *)0x1,dump_dynamic_symtab);\n  }" if (parenthesized_expression "(dump_dynamic_symtab != 0)" ( (binary_expression "dump_dynamic_symtab != 0" identifier != number_literal) )) (compound_statement "{\n    dump_symbols((bfd *)0x1,dump_dynamic_symtab);\n  }" { (expression_statement "dump_symbols((bfd *)0x1,dump_dynamic_symtab);" (call_expression "dump_symbols((bfd *)0x1,dump_dynamic_symtab)" identifier (argument_list "((bfd *)0x1,dump_dynamic_symtab)" ( (cast_expression "(bfd *)0x1" ( (type_descriptor "bfd *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) , identifier ))) ;) })) (if_statement "if (dump_dwarf_section_info != 0) {\n    dump_dwarf(abfd);\n  }" if (parenthesized_expression "(dump_dwarf_section_info != 0)" ( (binary_expression "dump_dwarf_section_info != 0" identifier != number_literal) )) (compound_statement "{\n    dump_dwarf(abfd);\n  }" { (expression_statement "dump_dwarf(abfd);" (call_expression "dump_dwarf(abfd)" identifier (argument_list "(abfd)" ( identifier ))) ;) })) (if_statement "if (dump_stab_section_info != 0) {\n    dump_stabs_section(abfd,".stab",".stabstr");\n    dump_stabs_section(abfd,".stab.excl",".stab.exclstr");\n    dump_stabs_section(abfd,".stab.index",".stab.indexstr");\n    dump_stabs_section(abfd,"LC_SYMTAB.stabs","LC_SYMTAB.stabstr");\n    dump_stabs_section(abfd,"$GDB_SYMBOLS$","$GDB_STRINGS$");\n  }" if (parenthesized_expression "(dump_stab_section_info != 0)" ( (binary_expression "dump_stab_section_info != 0" identifier != number_literal) )) (compound_statement "{\n    dump_stabs_section(abfd,".stab",".stabstr");\n    dump_stabs_section(abfd,".stab.excl",".stab.exclstr");\n    dump_stabs_section(abfd,".stab.index",".stab.indexstr");\n    dump_stabs_section(abfd,"LC_SYMTAB.stabs","LC_SYMTAB.stabstr");\n    dump_stabs_section(abfd,"$GDB_SYMBOLS$","$GDB_STRINGS$");\n  }" { (expression_statement "dump_stabs_section(abfd,".stab",".stabstr");" (call_expression "dump_stabs_section(abfd,".stab",".stabstr")" identifier (argument_list "(abfd,".stab",".stabstr")" ( identifier , (string_literal "".stab"" " string_content ") , (string_literal "".stabstr"" " string_content ") ))) ;) (expression_statement "dump_stabs_section(abfd,".stab.excl",".stab.exclstr");" (call_expression "dump_stabs_section(abfd,".stab.excl",".stab.exclstr")" identifier (argument_list "(abfd,".stab.excl",".stab.exclstr")" ( identifier , (string_literal "".stab.excl"" " string_content ") , (string_literal "".stab.exclstr"" " string_content ") ))) ;) (expression_statement "dump_stabs_section(abfd,".stab.index",".stab.indexstr");" (call_expression "dump_stabs_section(abfd,".stab.index",".stab.indexstr")" identifier (argument_list "(abfd,".stab.index",".stab.indexstr")" ( identifier , (string_literal "".stab.index"" " string_content ") , (string_literal "".stab.indexstr"" " string_content ") ))) ;) (expression_statement "dump_stabs_section(abfd,"LC_SYMTAB.stabs","LC_SYMTAB.stabstr");" (call_expression "dump_stabs_section(abfd,"LC_SYMTAB.stabs","LC_SYMTAB.stabstr")" identifier (argument_list "(abfd,"LC_SYMTAB.stabs","LC_SYMTAB.stabstr")" ( identifier , (string_literal ""LC_SYMTAB.stabs"" " string_content ") , (string_literal ""LC_SYMTAB.stabstr"" " string_content ") ))) ;) (expression_statement "dump_stabs_section(abfd,"$GDB_SYMBOLS$","$GDB_STRINGS$");" (call_expression "dump_stabs_section(abfd,"$GDB_SYMBOLS$","$GDB_STRINGS$")" identifier (argument_list "(abfd,"$GDB_SYMBOLS$","$GDB_STRINGS$")" ( identifier , (string_literal ""$GDB_SYMBOLS$"" " string_content ") , (string_literal ""$GDB_STRINGS$"" " string_content ") ))) ;) })) (if_statement "if (dump_reloc_info == 0) {\nLAB_00017355:\n    if (dump_dynamic_reloc_info != 0) {\n      if (disassemble != 0) goto LAB_00017371;\n      lVar4 = (*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound)(abfd);\n      if (lVar4 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (lVar4 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        relpp = (arelent **)xmalloc(lVar4);\n        lVar4 = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,relpp,dynsyms);\n        if (lVar4 < 0) goto LAB_00017bfe;\n        if (lVar4 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          dump_reloc_set(abfd,(asection *)0x0,relpp,lVar4);\n          puts("\n");\n        }\n        free(relpp);\n      }\n    }\nLAB_000171f0:\n    if (dump_section_contents != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(abfd,dump_section,0);\n    }\n    if (disassemble == 0) goto joined_r0x0001721a;\n  }\n  else {\n    if (disassemble == 0) {\n      bfd_map_over_sections(abfd,dump_relocs_in_section,0);\n      goto LAB_00017355;\n    }\n    if (dump_dynamic_reloc_info == 0) goto LAB_000171f0;\nLAB_00017371:\n    if (dump_section_contents != 0) goto LAB_00017ac0;\n  }" if (parenthesized_expression "(dump_reloc_info == 0)" ( (binary_expression "dump_reloc_info == 0" identifier == number_literal) )) (compound_statement "{\nLAB_00017355:\n    if (dump_dynamic_reloc_info != 0) {\n      if (disassemble != 0) goto LAB_00017371;\n      lVar4 = (*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound)(abfd);\n      if (lVar4 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (lVar4 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        relpp = (arelent **)xmalloc(lVar4);\n        lVar4 = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,relpp,dynsyms);\n        if (lVar4 < 0) goto LAB_00017bfe;\n        if (lVar4 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          dump_reloc_set(abfd,(asection *)0x0,relpp,lVar4);\n          puts("\n");\n        }\n        free(relpp);\n      }\n    }\nLAB_000171f0:\n    if (dump_section_contents != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(abfd,dump_section,0);\n    }\n    if (disassemble == 0) goto joined_r0x0001721a;\n  }" { (labeled_statement "LAB_00017355:\n    if (dump_dynamic_reloc_info != 0) {\n      if (disassemble != 0) goto LAB_00017371;\n      lVar4 = (*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound)(abfd);\n      if (lVar4 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (lVar4 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        relpp = (arelent **)xmalloc(lVar4);\n        lVar4 = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,relpp,dynsyms);\n        if (lVar4 < 0) goto LAB_00017bfe;\n        if (lVar4 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          dump_reloc_set(abfd,(asection *)0x0,relpp,lVar4);\n          puts("\n");\n        }\n        free(relpp);\n      }\n    }" statement_identifier : (if_statement "if (dump_dynamic_reloc_info != 0) {\n      if (disassemble != 0) goto LAB_00017371;\n      lVar4 = (*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound)(abfd);\n      if (lVar4 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (lVar4 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        relpp = (arelent **)xmalloc(lVar4);\n        lVar4 = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,relpp,dynsyms);\n        if (lVar4 < 0) goto LAB_00017bfe;\n        if (lVar4 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          dump_reloc_set(abfd,(asection *)0x0,relpp,lVar4);\n          puts("\n");\n        }\n        free(relpp);\n      }\n    }" if (parenthesized_expression "(dump_dynamic_reloc_info != 0)" ( (binary_expression "dump_dynamic_reloc_info != 0" identifier != number_literal) )) (compound_statement "{\n      if (disassemble != 0) goto LAB_00017371;\n      lVar4 = (*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound)(abfd);\n      if (lVar4 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (lVar4 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        relpp = (arelent **)xmalloc(lVar4);\n        lVar4 = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,relpp,dynsyms);\n        if (lVar4 < 0) goto LAB_00017bfe;\n        if (lVar4 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          dump_reloc_set(abfd,(asection *)0x0,relpp,lVar4);\n          puts("\n");\n        }\n        free(relpp);\n      }\n    }" { (if_statement "if (disassemble != 0) goto LAB_00017371;" if (parenthesized_expression "(disassemble != 0)" ( (binary_expression "disassemble != 0" identifier != number_literal) )) (goto_statement "goto LAB_00017371;" goto statement_identifier ;)) (expression_statement "lVar4 = (*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound)(abfd);" (assignment_expression "lVar4 = (*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound)(abfd)" identifier = (call_expression "(*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound)(abfd)" (parenthesized_expression "(*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound)" ( (pointer_expression "*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound" * (field_expression "abfd->xvec->_bfd_get_dynamic_reloc_upper_bound" (field_expression "abfd->xvec" identifier -> field_identifier) -> field_identifier)) )) (argument_list "(abfd)" ( identifier )))) ;) (if_statement "if (lVar4 < 0) goto LAB_00017bfe;" if (parenthesized_expression "(lVar4 < 0)" ( (binary_expression "lVar4 < 0" identifier < number_literal) )) (goto_statement "goto LAB_00017bfe;" goto statement_identifier ;)) (expression_statement "printf("DYNAMIC RELOCATION RECORDS");" (call_expression "printf("DYNAMIC RELOCATION RECORDS")" identifier (argument_list "("DYNAMIC RELOCATION RECORDS")" ( (string_literal ""DYNAMIC RELOCATION RECORDS"" " string_content ") ))) ;) (if_statement "if (lVar4 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        relpp = (arelent **)xmalloc(lVar4);\n        lVar4 = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,relpp,dynsyms);\n        if (lVar4 < 0) goto LAB_00017bfe;\n        if (lVar4 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          dump_reloc_set(abfd,(asection *)0x0,relpp,lVar4);\n          puts("\n");\n        }\n        free(relpp);\n      }" if (parenthesized_expression "(lVar4 == 0)" ( (binary_expression "lVar4 == 0" identifier == number_literal) )) (compound_statement "{\n        puts(" (none)\n");\n      }" { (expression_statement "puts(" (none)\n");" (call_expression "puts(" (none)\n")" identifier (argument_list "(" (none)\n")" ( (string_literal "" (none)\n"" " string_content escape_sequence ") ))) ;) }) (else_clause "else {\n        relpp = (arelent **)xmalloc(lVar4);\n        lVar4 = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,relpp,dynsyms);\n        if (lVar4 < 0) goto LAB_00017bfe;\n        if (lVar4 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          dump_reloc_set(abfd,(asection *)0x0,relpp,lVar4);\n          puts("\n");\n        }\n        free(relpp);\n      }" else (compound_statement "{\n        relpp = (arelent **)xmalloc(lVar4);\n        lVar4 = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,relpp,dynsyms);\n        if (lVar4 < 0) goto LAB_00017bfe;\n        if (lVar4 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          dump_reloc_set(abfd,(asection *)0x0,relpp,lVar4);\n          puts("\n");\n        }\n        free(relpp);\n      }" { (expression_statement "relpp = (arelent **)xmalloc(lVar4);" (assignment_expression "relpp = (arelent **)xmalloc(lVar4)" identifier = (cast_expression "(arelent **)xmalloc(lVar4)" ( (type_descriptor "arelent **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "xmalloc(lVar4)" identifier (argument_list "(lVar4)" ( identifier ))))) ;) (expression_statement "lVar4 = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,relpp,dynsyms);" (assignment_expression "lVar4 = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,relpp,dynsyms)" identifier = (call_expression "(*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,relpp,dynsyms)" (parenthesized_expression "(*abfd->xvec->_bfd_canonicalize_dynamic_reloc)" ( (pointer_expression "*abfd->xvec->_bfd_canonicalize_dynamic_reloc" * (field_expression "abfd->xvec->_bfd_canonicalize_dynamic_reloc" (field_expression "abfd->xvec" identifier -> field_identifier) -> field_identifier)) )) (argument_list "(abfd,relpp,dynsyms)" ( identifier , identifier , identifier )))) ;) (if_statement "if (lVar4 < 0) goto LAB_00017bfe;" if (parenthesized_expression "(lVar4 < 0)" ( (binary_expression "lVar4 < 0" identifier < number_literal) )) (goto_statement "goto LAB_00017bfe;" goto statement_identifier ;)) (if_statement "if (lVar4 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          dump_reloc_set(abfd,(asection *)0x0,relpp,lVar4);\n          puts("\n");\n        }" if (parenthesized_expression "(lVar4 == 0)" ( (binary_expression "lVar4 == 0" identifier == number_literal) )) (compound_statement "{\n          puts(" (none)\n");\n        }" { (expression_statement "puts(" (none)\n");" (call_expression "puts(" (none)\n")" identifier (argument_list "(" (none)\n")" ( (string_literal "" (none)\n"" " string_content escape_sequence ") ))) ;) }) (else_clause "else {\n          putchar(10);\n          dump_reloc_set(abfd,(asection *)0x0,relpp,lVar4);\n          puts("\n");\n        }" else (compound_statement "{\n          putchar(10);\n          dump_reloc_set(abfd,(asection *)0x0,relpp,lVar4);\n          puts("\n");\n        }" { (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;) (expression_statement "dump_reloc_set(abfd,(asection *)0x0,relpp,lVar4);" (call_expression "dump_reloc_set(abfd,(asection *)0x0,relpp,lVar4)" identifier (argument_list "(abfd,(asection *)0x0,relpp,lVar4)" ( identifier , (cast_expression "(asection *)0x0" ( (type_descriptor "asection *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) , identifier , identifier ))) ;) (expression_statement "puts("\n");" (call_expression "puts("\n")" identifier (argument_list "("\n")" ( (string_literal ""\n"" " escape_sequence ") ))) ;) }))) (expression_statement "free(relpp);" (call_expression "free(relpp)" identifier (argument_list "(relpp)" ( identifier ))) ;) }))) }))) (labeled_statement "LAB_000171f0:\n    if (dump_section_contents != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(abfd,dump_section,0);\n    }" statement_identifier : (if_statement "if (dump_section_contents != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(abfd,dump_section,0);\n    }" if (parenthesized_expression "(dump_section_contents != 0)" ( (binary_expression "dump_section_contents != 0" identifier != number_literal) )) (compound_statement "{\nLAB_00017ac0:\n      bfd_map_over_sections(abfd,dump_section,0);\n    }" { (labeled_statement "LAB_00017ac0:\n      bfd_map_over_sections(abfd,dump_section,0);" statement_identifier : (expression_statement "bfd_map_over_sections(abfd,dump_section,0);" (call_expression "bfd_map_over_sections(abfd,dump_section,0)" identifier (argument_list "(abfd,dump_section,0)" ( identifier , identifier , number_literal ))) ;)) }))) (if_statement "if (disassemble == 0) goto joined_r0x0001721a;" if (parenthesized_expression "(disassemble == 0)" ( (binary_expression "disassemble == 0" identifier == number_literal) )) (goto_statement "goto joined_r0x0001721a;" goto statement_identifier ;)) }) (else_clause "else {\n    if (disassemble == 0) {\n      bfd_map_over_sections(abfd,dump_relocs_in_section,0);\n      goto LAB_00017355;\n    }\n    if (dump_dynamic_reloc_info == 0) goto LAB_000171f0;\nLAB_00017371:\n    if (dump_section_contents != 0) goto LAB_00017ac0;\n  }" else (compound_statement "{\n    if (disassemble == 0) {\n      bfd_map_over_sections(abfd,dump_relocs_in_section,0);\n      goto LAB_00017355;\n    }\n    if (dump_dynamic_reloc_info == 0) goto LAB_000171f0;\nLAB_00017371:\n    if (dump_section_contents != 0) goto LAB_00017ac0;\n  }" { (if_statement "if (disassemble == 0) {\n      bfd_map_over_sections(abfd,dump_relocs_in_section,0);\n      goto LAB_00017355;\n    }" if (parenthesized_expression "(disassemble == 0)" ( (binary_expression "disassemble == 0" identifier == number_literal) )) (compound_statement "{\n      bfd_map_over_sections(abfd,dump_relocs_in_section,0);\n      goto LAB_00017355;\n    }" { (expression_statement "bfd_map_over_sections(abfd,dump_relocs_in_section,0);" (call_expression "bfd_map_over_sections(abfd,dump_relocs_in_section,0)" identifier (argument_list "(abfd,dump_relocs_in_section,0)" ( identifier , identifier , number_literal ))) ;) (goto_statement "goto LAB_00017355;" goto statement_identifier ;) })) (if_statement "if (dump_dynamic_reloc_info == 0) goto LAB_000171f0;" if (parenthesized_expression "(dump_dynamic_reloc_info == 0)" ( (binary_expression "dump_dynamic_reloc_info == 0" identifier == number_literal) )) (goto_statement "goto LAB_000171f0;" goto statement_identifier ;)) (labeled_statement "LAB_00017371:\n    if (dump_section_contents != 0) goto LAB_00017ac0;" statement_identifier : (if_statement "if (dump_section_contents != 0) goto LAB_00017ac0;" if (parenthesized_expression "(dump_section_contents != 0)" ( (binary_expression "dump_section_contents != 0" identifier != number_literal) )) (goto_statement "goto LAB_00017ac0;" goto statement_identifier ;))) }))) (expression_statement "print_files = (print_file_list *)0x0;" (assignment_expression "print_files = (print_file_list *)0x0" identifier = (cast_expression "(print_file_list *)0x0" ( (type_descriptor "print_file_list *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "prev_functionname = (char *)0x0;" (assignment_expression "prev_functionname = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "prev_line = 0xffffffff;" (assignment_expression "prev_line = 0xffffffff" identifier = number_literal) ;) (expression_statement "sorted_symcount = symcount;" (assignment_expression "sorted_symcount = symcount" identifier = identifier) ;) (if_statement "if (symcount == 0) {\n    sorted_symcount = dynsymcount;\n  }" if (parenthesized_expression "(symcount == 0)" ( (binary_expression "symcount == 0" identifier == number_literal) )) (compound_statement "{\n    sorted_symcount = dynsymcount;\n  }" { (expression_statement "sorted_symcount = dynsymcount;" (assignment_expression "sorted_symcount = dynsymcount" identifier = identifier) ;) })) (expression_statement "prev_discriminator = 0;" (assignment_expression "prev_discriminator = 0" identifier = number_literal) ;) (expression_statement "__dest = (asymbol **)xmalloc((sorted_symcount + synthcount) * 4);" (assignment_expression "__dest = (asymbol **)xmalloc((sorted_symcount + synthcount) * 4)" identifier = (cast_expression "(asymbol **)xmalloc((sorted_symcount + synthcount) * 4)" ( (type_descriptor "asymbol **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "xmalloc((sorted_symcount + synthcount) * 4)" identifier (argument_list "((sorted_symcount + synthcount) * 4)" ( (binary_expression "(sorted_symcount + synthcount) * 4" (parenthesized_expression "(sorted_symcount + synthcount)" ( (binary_expression "sorted_symcount + synthcount" identifier + identifier) )) * number_literal) ))))) ;) (expression_statement "local_e8 = sorted_symcount;" (assignment_expression "local_e8 = sorted_symcount" identifier = identifier) ;) (expression_statement "ppaVar15 = syms;" (assignment_expression "ppaVar15 = syms" identifier = identifier) ;) (if_statement "if (symcount == 0) {\n    ppaVar15 = dynsyms;\n  }" if (parenthesized_expression "(symcount == 0)" ( (binary_expression "symcount == 0" identifier == number_literal) )) (compound_statement "{\n    ppaVar15 = dynsyms;\n  }" { (expression_statement "ppaVar15 = dynsyms;" (assignment_expression "ppaVar15 = dynsyms" identifier = identifier) ;) })) (expression_statement "sorted_syms = __dest;" (assignment_expression "sorted_syms = __dest" identifier = identifier) ;) (expression_statement "memcpy(__dest,ppaVar15,sorted_symcount << 2);" (call_expression "memcpy(__dest,ppaVar15,sorted_symcount << 2)" identifier (argument_list "(__dest,ppaVar15,sorted_symcount << 2)" ( identifier , identifier , (binary_expression "sorted_symcount << 2" identifier << number_literal) ))) ;) (expression_statement "pbVar5 = (bfd_section *)(PTR__bfd_std_section_0006ffd8 + 0xa8);" (assignment_expression "pbVar5 = (bfd_section *)(PTR__bfd_std_section_0006ffd8 + 0xa8)" identifier = (cast_expression "(bfd_section *)(PTR__bfd_std_section_0006ffd8 + 0xa8)" ( (type_descriptor "bfd_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR__bfd_std_section_0006ffd8 + 0xa8)" ( (binary_expression "PTR__bfd_std_section_0006ffd8 + 0xa8" identifier + number_literal) )))) ;) (expression_statement "local_f0 = __dest;" (assignment_expression "local_f0 = __dest" identifier = identifier) ;) (expression_statement "local_ec = __dest;" (assignment_expression "local_ec = __dest" identifier = identifier) ;) (labeled_statement "LAB_00017428:\n  local_e8 = local_e8 + -1;" statement_identifier : (expression_statement "local_e8 = local_e8 + -1;" (assignment_expression "local_e8 = local_e8 + -1" identifier = (binary_expression "local_e8 + -1" identifier + number_literal)) ;)) (if_statement "if (-1 < local_e8) {\n    while( true ) {\n      ppaVar15 = local_f0 + 1;\n      paVar6 = *local_f0;\n      pbVar17 = (byte *)paVar6->name;\n      local_f0 = ppaVar15;\n      if ((pbVar17 == (byte *)0x0) || (*pbVar17 == 0)) break;\n      bVar21 = false;\n      bVar23 = (paVar6->flags & 0x104) == 0;\n      if (!bVar23) {\n        iVar13 = 4;\n        pbVar16 = pbVar17;\n        pbVar19 = &DAT_0004c8bd;\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          bVar21 = *pbVar16 < *pbVar19;\n          bVar23 = *pbVar16 == *pbVar19;\n          pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1;\n          pbVar19 = pbVar19 + (uint)bVar24 * -2 + 1;\n        } while (bVar23);\n        bVar22 = false;\n        bVar21 = (!bVar21 && !bVar23) == bVar21;\n        if (!bVar21) {\n          iVar13 = 5;\n          pbVar16 = &DAT_0004c8c2;\n          do {\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar22 = *pbVar17 < *pbVar16;\n            bVar21 = *pbVar17 == *pbVar16;\n            pbVar17 = pbVar17 + (uint)bVar24 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1;\n          } while (bVar21);\n          if ((!bVar22 && !bVar21) != bVar22) break;\n        }\n      }\n      if ((paVar6->section == pbVar5) || ((paVar6->section->flags & 0x1000) != 0)) break;\n      *local_ec = paVar6;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }\n    goto LAB_00017428;\n  }" if (parenthesized_expression "(-1 < local_e8)" ( (binary_expression "-1 < local_e8" number_literal < identifier) )) (compound_statement "{\n    while( true ) {\n      ppaVar15 = local_f0 + 1;\n      paVar6 = *local_f0;\n      pbVar17 = (byte *)paVar6->name;\n      local_f0 = ppaVar15;\n      if ((pbVar17 == (byte *)0x0) || (*pbVar17 == 0)) break;\n      bVar21 = false;\n      bVar23 = (paVar6->flags & 0x104) == 0;\n      if (!bVar23) {\n        iVar13 = 4;\n        pbVar16 = pbVar17;\n        pbVar19 = &DAT_0004c8bd;\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          bVar21 = *pbVar16 < *pbVar19;\n          bVar23 = *pbVar16 == *pbVar19;\n          pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1;\n          pbVar19 = pbVar19 + (uint)bVar24 * -2 + 1;\n        } while (bVar23);\n        bVar22 = false;\n        bVar21 = (!bVar21 && !bVar23) == bVar21;\n        if (!bVar21) {\n          iVar13 = 5;\n          pbVar16 = &DAT_0004c8c2;\n          do {\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar22 = *pbVar17 < *pbVar16;\n            bVar21 = *pbVar17 == *pbVar16;\n            pbVar17 = pbVar17 + (uint)bVar24 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1;\n          } while (bVar21);\n          if ((!bVar22 && !bVar21) != bVar22) break;\n        }\n      }\n      if ((paVar6->section == pbVar5) || ((paVar6->section->flags & 0x1000) != 0)) break;\n      *local_ec = paVar6;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }\n    goto LAB_00017428;\n  }" { (while_statement "while( true ) {\n      ppaVar15 = local_f0 + 1;\n      paVar6 = *local_f0;\n      pbVar17 = (byte *)paVar6->name;\n      local_f0 = ppaVar15;\n      if ((pbVar17 == (byte *)0x0) || (*pbVar17 == 0)) break;\n      bVar21 = false;\n      bVar23 = (paVar6->flags & 0x104) == 0;\n      if (!bVar23) {\n        iVar13 = 4;\n        pbVar16 = pbVar17;\n        pbVar19 = &DAT_0004c8bd;\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          bVar21 = *pbVar16 < *pbVar19;\n          bVar23 = *pbVar16 == *pbVar19;\n          pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1;\n          pbVar19 = pbVar19 + (uint)bVar24 * -2 + 1;\n        } while (bVar23);\n        bVar22 = false;\n        bVar21 = (!bVar21 && !bVar23) == bVar21;\n        if (!bVar21) {\n          iVar13 = 5;\n          pbVar16 = &DAT_0004c8c2;\n          do {\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar22 = *pbVar17 < *pbVar16;\n            bVar21 = *pbVar17 == *pbVar16;\n            pbVar17 = pbVar17 + (uint)bVar24 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1;\n          } while (bVar21);\n          if ((!bVar22 && !bVar21) != bVar22) break;\n        }\n      }\n      if ((paVar6->section == pbVar5) || ((paVar6->section->flags & 0x1000) != 0)) break;\n      *local_ec = paVar6;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n      ppaVar15 = local_f0 + 1;\n      paVar6 = *local_f0;\n      pbVar17 = (byte *)paVar6->name;\n      local_f0 = ppaVar15;\n      if ((pbVar17 == (byte *)0x0) || (*pbVar17 == 0)) break;\n      bVar21 = false;\n      bVar23 = (paVar6->flags & 0x104) == 0;\n      if (!bVar23) {\n        iVar13 = 4;\n        pbVar16 = pbVar17;\n        pbVar19 = &DAT_0004c8bd;\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          bVar21 = *pbVar16 < *pbVar19;\n          bVar23 = *pbVar16 == *pbVar19;\n          pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1;\n          pbVar19 = pbVar19 + (uint)bVar24 * -2 + 1;\n        } while (bVar23);\n        bVar22 = false;\n        bVar21 = (!bVar21 && !bVar23) == bVar21;\n        if (!bVar21) {\n          iVar13 = 5;\n          pbVar16 = &DAT_0004c8c2;\n          do {\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar22 = *pbVar17 < *pbVar16;\n            bVar21 = *pbVar17 == *pbVar16;\n            pbVar17 = pbVar17 + (uint)bVar24 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1;\n          } while (bVar21);\n          if ((!bVar22 && !bVar21) != bVar22) break;\n        }\n      }\n      if ((paVar6->section == pbVar5) || ((paVar6->section->flags & 0x1000) != 0)) break;\n      *local_ec = paVar6;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }" { (expression_statement "ppaVar15 = local_f0 + 1;" (assignment_expression "ppaVar15 = local_f0 + 1" identifier = (binary_expression "local_f0 + 1" identifier + number_literal)) ;) (expression_statement "paVar6 = *local_f0;" (assignment_expression "paVar6 = *local_f0" identifier = (pointer_expression "*local_f0" * identifier)) ;) (expression_statement "pbVar17 = (byte *)paVar6->name;" (assignment_expression "pbVar17 = (byte *)paVar6->name" identifier = (cast_expression "(byte *)paVar6->name" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "paVar6->name" identifier -> field_identifier))) ;) (expression_statement "local_f0 = ppaVar15;" (assignment_expression "local_f0 = ppaVar15" identifier = identifier) ;) (if_statement "if ((pbVar17 == (byte *)0x0) || (*pbVar17 == 0)) break;" if (parenthesized_expression "((pbVar17 == (byte *)0x0) || (*pbVar17 == 0))" ( (binary_expression "(pbVar17 == (byte *)0x0) || (*pbVar17 == 0)" (parenthesized_expression "(pbVar17 == (byte *)0x0)" ( (binary_expression "pbVar17 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(*pbVar17 == 0)" ( (binary_expression "*pbVar17 == 0" (pointer_expression "*pbVar17" * identifier) == number_literal) ))) )) (break_statement "break;" break ;)) (expression_statement "bVar21 = false;" (assignment_expression "bVar21 = false" identifier = false) ;) (expression_statement "bVar23 = (paVar6->flags & 0x104) == 0;" (assignment_expression "bVar23 = (paVar6->flags & 0x104) == 0" identifier = (binary_expression "(paVar6->flags & 0x104) == 0" (parenthesized_expression "(paVar6->flags & 0x104)" ( (binary_expression "paVar6->flags & 0x104" (field_expression "paVar6->flags" identifier -> field_identifier) & number_literal) )) == number_literal)) ;) (if_statement "if (!bVar23) {\n        iVar13 = 4;\n        pbVar16 = pbVar17;\n        pbVar19 = &DAT_0004c8bd;\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          bVar21 = *pbVar16 < *pbVar19;\n          bVar23 = *pbVar16 == *pbVar19;\n          pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1;\n          pbVar19 = pbVar19 + (uint)bVar24 * -2 + 1;\n        } while (bVar23);\n        bVar22 = false;\n        bVar21 = (!bVar21 && !bVar23) == bVar21;\n        if (!bVar21) {\n          iVar13 = 5;\n          pbVar16 = &DAT_0004c8c2;\n          do {\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar22 = *pbVar17 < *pbVar16;\n            bVar21 = *pbVar17 == *pbVar16;\n            pbVar17 = pbVar17 + (uint)bVar24 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1;\n          } while (bVar21);\n          if ((!bVar22 && !bVar21) != bVar22) break;\n        }\n      }" if (parenthesized_expression "(!bVar23)" ( (unary_expression "!bVar23" ! identifier) )) (compound_statement "{\n        iVar13 = 4;\n        pbVar16 = pbVar17;\n        pbVar19 = &DAT_0004c8bd;\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          bVar21 = *pbVar16 < *pbVar19;\n          bVar23 = *pbVar16 == *pbVar19;\n          pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1;\n          pbVar19 = pbVar19 + (uint)bVar24 * -2 + 1;\n        } while (bVar23);\n        bVar22 = false;\n        bVar21 = (!bVar21 && !bVar23) == bVar21;\n        if (!bVar21) {\n          iVar13 = 5;\n          pbVar16 = &DAT_0004c8c2;\n          do {\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar22 = *pbVar17 < *pbVar16;\n            bVar21 = *pbVar17 == *pbVar16;\n            pbVar17 = pbVar17 + (uint)bVar24 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1;\n          } while (bVar21);\n          if ((!bVar22 && !bVar21) != bVar22) break;\n        }\n      }" { (expression_statement "iVar13 = 4;" (assignment_expression "iVar13 = 4" identifier = number_literal) ;) (expression_statement "pbVar16 = pbVar17;" (assignment_expression "pbVar16 = pbVar17" identifier = identifier) ;) (expression_statement "pbVar19 = &DAT_0004c8bd;" (assignment_expression "pbVar19 = &DAT_0004c8bd" identifier = (pointer_expression "&DAT_0004c8bd" & identifier)) ;) (do_statement "do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          bVar21 = *pbVar16 < *pbVar19;\n          bVar23 = *pbVar16 == *pbVar19;\n          pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1;\n          pbVar19 = pbVar19 + (uint)bVar24 * -2 + 1;\n        } while (bVar23);" do (compound_statement "{\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          bVar21 = *pbVar16 < *pbVar19;\n          bVar23 = *pbVar16 == *pbVar19;\n          pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1;\n          pbVar19 = pbVar19 + (uint)bVar24 * -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 "bVar21 = *pbVar16 < *pbVar19;" (assignment_expression "bVar21 = *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)bVar24 * -2 + 1;" (assignment_expression "pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1" identifier = (binary_expression "pbVar16 + (uint)bVar24 * -2 + 1" (binary_expression "pbVar16 + (uint)bVar24 * -2" identifier + (binary_expression "(uint)bVar24 * -2" (cast_expression "(uint)bVar24" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar19 = pbVar19 + (uint)bVar24 * -2 + 1;" (assignment_expression "pbVar19 = pbVar19 + (uint)bVar24 * -2 + 1" identifier = (binary_expression "pbVar19 + (uint)bVar24 * -2 + 1" (binary_expression "pbVar19 + (uint)bVar24 * -2" identifier + (binary_expression "(uint)bVar24 * -2" (cast_expression "(uint)bVar24" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar23)" ( identifier )) ;) (expression_statement "bVar22 = false;" (assignment_expression "bVar22 = false" identifier = false) ;) (expression_statement "bVar21 = (!bVar21 && !bVar23) == bVar21;" (assignment_expression "bVar21 = (!bVar21 && !bVar23) == bVar21" identifier = (binary_expression "(!bVar21 && !bVar23) == bVar21" (parenthesized_expression "(!bVar21 && !bVar23)" ( (binary_expression "!bVar21 && !bVar23" (unary_expression "!bVar21" ! identifier) && (unary_expression "!bVar23" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar21) {\n          iVar13 = 5;\n          pbVar16 = &DAT_0004c8c2;\n          do {\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar22 = *pbVar17 < *pbVar16;\n            bVar21 = *pbVar17 == *pbVar16;\n            pbVar17 = pbVar17 + (uint)bVar24 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1;\n          } while (bVar21);\n          if ((!bVar22 && !bVar21) != bVar22) break;\n        }" if (parenthesized_expression "(!bVar21)" ( (unary_expression "!bVar21" ! identifier) )) (compound_statement "{\n          iVar13 = 5;\n          pbVar16 = &DAT_0004c8c2;\n          do {\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar22 = *pbVar17 < *pbVar16;\n            bVar21 = *pbVar17 == *pbVar16;\n            pbVar17 = pbVar17 + (uint)bVar24 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1;\n          } while (bVar21);\n          if ((!bVar22 && !bVar21) != bVar22) break;\n        }" { (expression_statement "iVar13 = 5;" (assignment_expression "iVar13 = 5" identifier = number_literal) ;) (expression_statement "pbVar16 = &DAT_0004c8c2;" (assignment_expression "pbVar16 = &DAT_0004c8c2" identifier = (pointer_expression "&DAT_0004c8c2" & identifier)) ;) (do_statement "do {\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar22 = *pbVar17 < *pbVar16;\n            bVar21 = *pbVar17 == *pbVar16;\n            pbVar17 = pbVar17 + (uint)bVar24 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1;\n          } while (bVar21);" do (compound_statement "{\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar22 = *pbVar17 < *pbVar16;\n            bVar21 = *pbVar17 == *pbVar16;\n            pbVar17 = pbVar17 + (uint)bVar24 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar24 * -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 "bVar22 = *pbVar17 < *pbVar16;" (assignment_expression "bVar22 = *pbVar17 < *pbVar16" identifier = (binary_expression "*pbVar17 < *pbVar16" (pointer_expression "*pbVar17" * identifier) < (pointer_expression "*pbVar16" * identifier))) ;) (expression_statement "bVar21 = *pbVar17 == *pbVar16;" (assignment_expression "bVar21 = *pbVar17 == *pbVar16" identifier = (binary_expression "*pbVar17 == *pbVar16" (pointer_expression "*pbVar17" * identifier) == (pointer_expression "*pbVar16" * identifier))) ;) (expression_statement "pbVar17 = pbVar17 + (uint)bVar24 * -2 + 1;" (assignment_expression "pbVar17 = pbVar17 + (uint)bVar24 * -2 + 1" identifier = (binary_expression "pbVar17 + (uint)bVar24 * -2 + 1" (binary_expression "pbVar17 + (uint)bVar24 * -2" identifier + (binary_expression "(uint)bVar24 * -2" (cast_expression "(uint)bVar24" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1;" (assignment_expression "pbVar16 = pbVar16 + (uint)bVar24 * -2 + 1" identifier = (binary_expression "pbVar16 + (uint)bVar24 * -2 + 1" (binary_expression "pbVar16 + (uint)bVar24 * -2" identifier + (binary_expression "(uint)bVar24 * -2" (cast_expression "(uint)bVar24" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar21)" ( identifier )) ;) (if_statement "if ((!bVar22 && !bVar21) != bVar22) break;" 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) )) (break_statement "break;" break ;)) })) })) (if_statement "if ((paVar6->section == pbVar5) || ((paVar6->section->flags & 0x1000) != 0)) break;" if (parenthesized_expression "((paVar6->section == pbVar5) || ((paVar6->section->flags & 0x1000) != 0))" ( (binary_expression "(paVar6->section == pbVar5) || ((paVar6->section->flags & 0x1000) != 0)" (parenthesized_expression "(paVar6->section == pbVar5)" ( (binary_expression "paVar6->section == pbVar5" (field_expression "paVar6->section" identifier -> field_identifier) == identifier) )) || (parenthesized_expression "((paVar6->section->flags & 0x1000) != 0)" ( (binary_expression "(paVar6->section->flags & 0x1000) != 0" (parenthesized_expression "(paVar6->section->flags & 0x1000)" ( (binary_expression "paVar6->section->flags & 0x1000" (field_expression "paVar6->section->flags" (field_expression "paVar6->section" identifier -> field_identifier) -> field_identifier) & number_literal) )) != number_literal) ))) )) (break_statement "break;" break ;)) (expression_statement "*local_ec = paVar6;" (assignment_expression "*local_ec = paVar6" (pointer_expression "*local_ec" * identifier) = identifier) ;) (expression_statement "local_ec = local_ec + 1;" (assignment_expression "local_ec = local_ec + 1" identifier = (binary_expression "local_ec + 1" identifier + number_literal)) ;) (expression_statement "local_e8 = local_e8 + -1;" (assignment_expression "local_e8 = local_e8 + -1" identifier = (binary_expression "local_e8 + -1" identifier + number_literal)) ;) (if_statement "if (local_e8 < 0) goto LAB_000174ab;" if (parenthesized_expression "(local_e8 < 0)" ( (binary_expression "local_e8 < 0" identifier < number_literal) )) (goto_statement "goto LAB_000174ab;" goto statement_identifier ;)) })) (goto_statement "goto LAB_00017428;" goto statement_identifier ;) })) (labeled_statement "LAB_000174ab:\n  sorted_symcount = (int)local_ec - (int)__dest >> 2;" statement_identifier : (expression_statement "sorted_symcount = (int)local_ec - (int)__dest >> 2;" (assignment_expression "sorted_symcount = (int)local_ec - (int)__dest >> 2" identifier = (binary_expression "(int)local_ec - (int)__dest >> 2" (binary_expression "(int)local_ec - (int)__dest" (cast_expression "(int)local_ec" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)__dest" ( (type_descriptor "int" primitive_type) ) identifier)) >> number_literal)) ;)) (if_statement "if (0 < synthcount) {\n    sorted_symcount = sorted_symcount + synthcount;\n    paVar6 = synthsyms;\n    do {\n      *local_ec = paVar6;\n      local_ec = local_ec + 1;\n      paVar6 = paVar6 + 1;\n    } while (__dest + sorted_symcount != local_ec);\n  }" if (parenthesized_expression "(0 < synthcount)" ( (binary_expression "0 < synthcount" number_literal < identifier) )) (compound_statement "{\n    sorted_symcount = sorted_symcount + synthcount;\n    paVar6 = synthsyms;\n    do {\n      *local_ec = paVar6;\n      local_ec = local_ec + 1;\n      paVar6 = paVar6 + 1;\n    } while (__dest + sorted_symcount != local_ec);\n  }" { (expression_statement "sorted_symcount = sorted_symcount + synthcount;" (assignment_expression "sorted_symcount = sorted_symcount + synthcount" identifier = (binary_expression "sorted_symcount + synthcount" identifier + identifier)) ;) (expression_statement "paVar6 = synthsyms;" (assignment_expression "paVar6 = synthsyms" identifier = identifier) ;) (do_statement "do {\n      *local_ec = paVar6;\n      local_ec = local_ec + 1;\n      paVar6 = paVar6 + 1;\n    } while (__dest + sorted_symcount != local_ec);" do (compound_statement "{\n      *local_ec = paVar6;\n      local_ec = local_ec + 1;\n      paVar6 = paVar6 + 1;\n    }" { (expression_statement "*local_ec = paVar6;" (assignment_expression "*local_ec = paVar6" (pointer_expression "*local_ec" * identifier) = identifier) ;) (expression_statement "local_ec = local_ec + 1;" (assignment_expression "local_ec = local_ec + 1" identifier = (binary_expression "local_ec + 1" identifier + number_literal)) ;) (expression_statement "paVar6 = paVar6 + 1;" (assignment_expression "paVar6 = paVar6 + 1" identifier = (binary_expression "paVar6 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(__dest + sorted_symcount != local_ec)" ( (binary_expression "__dest + sorted_symcount != local_ec" (binary_expression "__dest + sorted_symcount" identifier + identifier) != identifier) )) ;) })) (expression_statement "qsort(__dest,sorted_symcount,4,compare_symbols);" (call_expression "qsort(__dest,sorted_symcount,4,compare_symbols)" identifier (argument_list "(__dest,sorted_symcount,4,compare_symbols)" ( identifier , identifier , number_literal , identifier ))) ;) (expression_statement "init_disassemble_info(&has_reloc,*(undefined4 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0);" (call_expression "init_disassemble_info(&has_reloc,*(undefined4 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0)" identifier (argument_list "(&has_reloc,*(undefined4 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0)" ( (pointer_expression "&has_reloc" & identifier) , (pointer_expression "*(undefined4 *)PTR_stdout_0006ffdc" * (cast_expression "(undefined4 *)PTR_stdout_0006ffdc" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , identifier ))) ;) (expression_statement "local_ac = &aux;" (assignment_expression "local_ac = &aux" identifier = (pointer_expression "&aux" & identifier)) ;) (expression_statement "local_68 = objdump_print_address;" (assignment_expression "local_68 = objdump_print_address" identifier = identifier) ;) (expression_statement "local_64 = objdump_symbol_at_address;" (assignment_expression "local_64 = objdump_symbol_at_address" identifier = identifier) ;) (expression_statement "aux.require_sec = 0;" (assignment_expression "aux.require_sec = 0" (field_expression "aux.require_sec" identifier . field_identifier) = number_literal) ;) (expression_statement "aux.dynrelbuf = (arelent **)0x0;" (assignment_expression "aux.dynrelbuf = (arelent **)0x0" (field_expression "aux.dynrelbuf" identifier . field_identifier) = (cast_expression "(arelent **)0x0" ( (type_descriptor "arelent **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (expression_statement "aux.dynrelcount = 0;" (assignment_expression "aux.dynrelcount = 0" (field_expression "aux.dynrelcount" identifier . field_identifier) = number_literal) ;) (expression_statement "aux.reloc = (arelent *)0x0;" (assignment_expression "aux.reloc = (arelent *)0x0" (field_expression "aux.reloc" identifier . field_identifier) = (cast_expression "(arelent *)0x0" ( (type_descriptor "arelent *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "aux.abfd = abfd;" (assignment_expression "aux.abfd = abfd" (field_expression "aux.abfd" identifier . field_identifier) = identifier) ;) (if_statement "if (machine != (char *)0x0) {\n    pbVar7 = (bfd_arch_info *)bfd_scan_arch(machine);\n    pcVar3 = machine;\n    if (pbVar7 == (bfd_arch_info *)0x0) {\n      pcVar12 = (char *)dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    /* WARNING: Subroutine does not return */\n      fatal(pcVar12,pcVar3);\n    }\n    abfd->arch_info = pbVar7;\n  }" if (parenthesized_expression "(machine != (char *)0x0)" ( (binary_expression "machine != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    pbVar7 = (bfd_arch_info *)bfd_scan_arch(machine);\n    pcVar3 = machine;\n    if (pbVar7 == (bfd_arch_info *)0x0) {\n      pcVar12 = (char *)dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    /* WARNING: Subroutine does not return */\n      fatal(pcVar12,pcVar3);\n    }\n    abfd->arch_info = pbVar7;\n  }" { (expression_statement "pbVar7 = (bfd_arch_info *)bfd_scan_arch(machine);" (assignment_expression "pbVar7 = (bfd_arch_info *)bfd_scan_arch(machine)" identifier = (cast_expression "(bfd_arch_info *)bfd_scan_arch(machine)" ( (type_descriptor "bfd_arch_info *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "bfd_scan_arch(machine)" identifier (argument_list "(machine)" ( identifier ))))) ;) (expression_statement "pcVar3 = machine;" (assignment_expression "pcVar3 = machine" identifier = identifier) ;) (if_statement "if (pbVar7 == (bfd_arch_info *)0x0) {\n      pcVar12 = (char *)dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    /* WARNING: Subroutine does not return */\n      fatal(pcVar12,pcVar3);\n    }" if (parenthesized_expression "(pbVar7 == (bfd_arch_info *)0x0)" ( (binary_expression "pbVar7 == (bfd_arch_info *)0x0" identifier == (cast_expression "(bfd_arch_info *)0x0" ( (type_descriptor "bfd_arch_info *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      pcVar12 = (char *)dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    /* WARNING: Subroutine does not return */\n      fatal(pcVar12,pcVar3);\n    }" { (expression_statement "pcVar12 = (char *)dcgettext(0,"can\'t use supplied machine %s",5,__dest);" (assignment_expression "pcVar12 = (char *)dcgettext(0,"can\'t use supplied machine %s",5,__dest)" identifier = (cast_expression "(char *)dcgettext(0,"can\'t use supplied machine %s",5,__dest)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"can\'t use supplied machine %s",5,__dest)" identifier (argument_list "(0,"can\'t use supplied machine %s",5,__dest)" ( number_literal , (string_literal ""can\'t use supplied machine %s"" " string_content escape_sequence string_content ") , number_literal , identifier ))))) ;) comment (expression_statement "fatal(pcVar12,pcVar3);" (call_expression "fatal(pcVar12,pcVar3)" identifier (argument_list "(pcVar12,pcVar3)" ( identifier , identifier ))) ;) })) (expression_statement "abfd->arch_info = pbVar7;" (assignment_expression "abfd->arch_info = pbVar7" (field_expression "abfd->arch_info" identifier -> field_identifier) = identifier) ;) })) (if_statement "if (endian != BFD_ENDIAN_UNKNOWN) {\n    pbVar8 = (bfd_target *)xmalloc(0x1c4);\n    pbVar1 = abfd->xvec;\n    puVar20 = (undefined4 *)((uint)&pbVar8->flavour & 0xfffffffc);\n    iVar13 = (int)pbVar8 - (int)puVar20;\n    pbVar8->name = pbVar1->name;\n    pbVar8->backend_data = pbVar1->backend_data;\n    puVar18 = (undefined4 *)((int)pbVar1 - iVar13);\n    for (uVar14 = iVar13 + 0x1c4U >> 2; uVar14 != 0; uVar14 = uVar14 - 1) {\n      *puVar20 = *puVar18;\n      puVar18 = puVar18 + (uint)bVar24 * -2 + 1;\n      puVar20 = puVar20 + (uint)bVar24 * -2 + 1;\n    }\n    abfd->xvec = pbVar8;\n    pbVar8->byteorder = endian;\n  }" if (parenthesized_expression "(endian != BFD_ENDIAN_UNKNOWN)" ( (binary_expression "endian != BFD_ENDIAN_UNKNOWN" identifier != identifier) )) (compound_statement "{\n    pbVar8 = (bfd_target *)xmalloc(0x1c4);\n    pbVar1 = abfd->xvec;\n    puVar20 = (undefined4 *)((uint)&pbVar8->flavour & 0xfffffffc);\n    iVar13 = (int)pbVar8 - (int)puVar20;\n    pbVar8->name = pbVar1->name;\n    pbVar8->backend_data = pbVar1->backend_data;\n    puVar18 = (undefined4 *)((int)pbVar1 - iVar13);\n    for (uVar14 = iVar13 + 0x1c4U >> 2; uVar14 != 0; uVar14 = uVar14 - 1) {\n      *puVar20 = *puVar18;\n      puVar18 = puVar18 + (uint)bVar24 * -2 + 1;\n      puVar20 = puVar20 + (uint)bVar24 * -2 + 1;\n    }\n    abfd->xvec = pbVar8;\n    pbVar8->byteorder = endian;\n  }" { (expression_statement "pbVar8 = (bfd_target *)xmalloc(0x1c4);" (assignment_expression "pbVar8 = (bfd_target *)xmalloc(0x1c4)" identifier = (cast_expression "(bfd_target *)xmalloc(0x1c4)" ( (type_descriptor "bfd_target *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(0x1c4)" identifier (argument_list "(0x1c4)" ( number_literal ))))) ;) (expression_statement "pbVar1 = abfd->xvec;" (assignment_expression "pbVar1 = abfd->xvec" identifier = (field_expression "abfd->xvec" identifier -> field_identifier)) ;) (expression_statement "puVar20 = (undefined4 *)((uint)&pbVar8->flavour & 0xfffffffc);" (assignment_expression "puVar20 = (undefined4 *)((uint)&pbVar8->flavour & 0xfffffffc)" identifier = (cast_expression "(undefined4 *)((uint)&pbVar8->flavour & 0xfffffffc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)&pbVar8->flavour & 0xfffffffc)" ( (binary_expression "(uint)&pbVar8->flavour & 0xfffffffc" (binary_expression "(uint)&pbVar8->flavour" (parenthesized_expression "(uint)" ( identifier )) & (field_expression "pbVar8->flavour" identifier -> field_identifier)) & number_literal) )))) ;) (expression_statement "iVar13 = (int)pbVar8 - (int)puVar20;" (assignment_expression "iVar13 = (int)pbVar8 - (int)puVar20" identifier = (binary_expression "(int)pbVar8 - (int)puVar20" (cast_expression "(int)pbVar8" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)puVar20" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "pbVar8->name = pbVar1->name;" (assignment_expression "pbVar8->name = pbVar1->name" (field_expression "pbVar8->name" identifier -> field_identifier) = (field_expression "pbVar1->name" identifier -> field_identifier)) ;) (expression_statement "pbVar8->backend_data = pbVar1->backend_data;" (assignment_expression "pbVar8->backend_data = pbVar1->backend_data" (field_expression "pbVar8->backend_data" identifier -> field_identifier) = (field_expression "pbVar1->backend_data" identifier -> field_identifier)) ;) (expression_statement "puVar18 = (undefined4 *)((int)pbVar1 - iVar13);" (assignment_expression "puVar18 = (undefined4 *)((int)pbVar1 - iVar13)" identifier = (cast_expression "(undefined4 *)((int)pbVar1 - iVar13)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pbVar1 - iVar13)" ( (binary_expression "(int)pbVar1 - iVar13" (cast_expression "(int)pbVar1" ( (type_descriptor "int" primitive_type) ) identifier) - identifier) )))) ;) (for_statement "for (uVar14 = iVar13 + 0x1c4U >> 2; uVar14 != 0; uVar14 = uVar14 - 1) {\n      *puVar20 = *puVar18;\n      puVar18 = puVar18 + (uint)bVar24 * -2 + 1;\n      puVar20 = puVar20 + (uint)bVar24 * -2 + 1;\n    }" for ( (assignment_expression "uVar14 = iVar13 + 0x1c4U >> 2" identifier = (binary_expression "iVar13 + 0x1c4U >> 2" (binary_expression "iVar13 + 0x1c4U" identifier + number_literal) >> number_literal)) ; (binary_expression "uVar14 != 0" identifier != number_literal) ; (assignment_expression "uVar14 = uVar14 - 1" identifier = (binary_expression "uVar14 - 1" identifier - number_literal)) ) (compound_statement "{\n      *puVar20 = *puVar18;\n      puVar18 = puVar18 + (uint)bVar24 * -2 + 1;\n      puVar20 = puVar20 + (uint)bVar24 * -2 + 1;\n    }" { (expression_statement "*puVar20 = *puVar18;" (assignment_expression "*puVar20 = *puVar18" (pointer_expression "*puVar20" * identifier) = (pointer_expression "*puVar18" * identifier)) ;) (expression_statement "puVar18 = puVar18 + (uint)bVar24 * -2 + 1;" (assignment_expression "puVar18 = puVar18 + (uint)bVar24 * -2 + 1" identifier = (binary_expression "puVar18 + (uint)bVar24 * -2 + 1" (binary_expression "puVar18 + (uint)bVar24 * -2" identifier + (binary_expression "(uint)bVar24 * -2" (cast_expression "(uint)bVar24" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "puVar20 = puVar20 + (uint)bVar24 * -2 + 1;" (assignment_expression "puVar20 = puVar20 + (uint)bVar24 * -2 + 1" identifier = (binary_expression "puVar20 + (uint)bVar24 * -2 + 1" (binary_expression "puVar20 + (uint)bVar24 * -2" identifier + (binary_expression "(uint)bVar24 * -2" (cast_expression "(uint)bVar24" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) })) (expression_statement "abfd->xvec = pbVar8;" (assignment_expression "abfd->xvec = pbVar8" (field_expression "abfd->xvec" identifier -> field_identifier) = identifier) ;) (expression_statement "pbVar8->byteorder = endian;" (assignment_expression "pbVar8->byteorder = endian" (field_expression "pbVar8->byteorder" identifier -> field_identifier) = identifier) ;) })) (expression_statement "uVar9 = bfd_get_mach(abfd);" (assignment_expression "uVar9 = bfd_get_mach(abfd)" identifier = (call_expression "bfd_get_mach(abfd)" identifier (argument_list "(abfd)" ( identifier )))) ;) (expression_statement "bVar2 = abfd->xvec->byteorder;" (assignment_expression "bVar2 = abfd->xvec->byteorder" identifier = (field_expression "abfd->xvec->byteorder" (field_expression "abfd->xvec" identifier -> field_identifier) -> field_identifier)) ;) (expression_statement "uVar10 = bfd_get_arch(abfd);" (assignment_expression "uVar10 = bfd_get_arch(abfd)" identifier = (call_expression "bfd_get_arch(abfd)" identifier (argument_list "(abfd)" ( identifier )))) ;) (expression_statement "aux.disassemble_fn = (disassembler_ftype)disassembler(uVar10,bVar2 == BFD_ENDIAN_BIG,uVar9,abfd);" (assignment_expression "aux.disassemble_fn = (disassembler_ftype)disassembler(uVar10,bVar2 == BFD_ENDIAN_BIG,uVar9,abfd)" (field_expression "aux.disassemble_fn" identifier . field_identifier) = (cast_expression "(disassembler_ftype)disassembler(uVar10,bVar2 == BFD_ENDIAN_BIG,uVar9,abfd)" ( (type_descriptor "disassembler_ftype" type_identifier) ) (call_expression "disassembler(uVar10,bVar2 == BFD_ENDIAN_BIG,uVar9,abfd)" identifier (argument_list "(uVar10,bVar2 == BFD_ENDIAN_BIG,uVar9,abfd)" ( identifier , (binary_expression "bVar2 == BFD_ENDIAN_BIG" identifier == identifier) , identifier , identifier ))))) ;) (if_statement "if (aux.disassemble_fn == (disassembler_ftype)0x0) {\n    uVar9 = bfd_get_arch(abfd);\n    uVar9 = bfd_printable_arch_mach(uVar9,0);\n    pcVar3 = (char *)dcgettext(0,"can\'t disassemble for architecture %s\n",5);\n    non_fatal(pcVar3,uVar9);\n    exit_status = 1;\n  }\n  else {\n    local_a8 = abfd->xvec->flavour;\n    local_a4 = bfd_get_arch(abfd);\n    local_a0 = bfd_get_mach(abfd);\n    local_24 = disassembler_options;\n    local_44 = bfd_octets_per_byte(abfd);\n    local_40 = 8;\n    local_3c = 3;\n    local_38 = 0;\n    bVar2 = abfd->xvec->byteorder;\n    if (bVar2 == BFD_ENDIAN_BIG) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (bVar2 == BFD_ENDIAN_LITTLE) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }\n    disassemble_init_for_target(&has_reloc);\n    lVar4 = (*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound)(abfd);\n    if (lVar4 < 0) {\n      if (dump_dynamic_reloc_info != 0) {\nLAB_00017bfe:\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(abfd->filename);\n      }\n    }\n    else if (lVar4 != 0) {\n      aux.dynrelbuf = (arelent **)xmalloc(lVar4);\n      aux.dynrelcount = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,aux.dynrelbuf,dynsyms);\n      if (aux.dynrelcount < 0) goto LAB_00017bfe;\n      qsort(aux.dynrelbuf,aux.dynrelcount,4,compare_relocs);\n    }\n    local_84 = sorted_syms;\n    local_7c = sorted_symcount;\n    bfd_map_over_sections(abfd,disassemble_section,&has_reloc);\n    if (aux.dynrelbuf != (arelent **)0x0) {\n      free(aux.dynrelbuf);\n    }\n    free(sorted_syms);\n  }" if (parenthesized_expression "(aux.disassemble_fn == (disassembler_ftype)0x0)" ( (binary_expression "aux.disassemble_fn == (disassembler_ftype)0x0" (field_expression "aux.disassemble_fn" identifier . field_identifier) == (cast_expression "(disassembler_ftype)0x0" ( (type_descriptor "disassembler_ftype" type_identifier) ) number_literal)) )) (compound_statement "{\n    uVar9 = bfd_get_arch(abfd);\n    uVar9 = bfd_printable_arch_mach(uVar9,0);\n    pcVar3 = (char *)dcgettext(0,"can\'t disassemble for architecture %s\n",5);\n    non_fatal(pcVar3,uVar9);\n    exit_status = 1;\n  }" { (expression_statement "uVar9 = bfd_get_arch(abfd);" (assignment_expression "uVar9 = bfd_get_arch(abfd)" identifier = (call_expression "bfd_get_arch(abfd)" identifier (argument_list "(abfd)" ( identifier )))) ;) (expression_statement "uVar9 = bfd_printable_arch_mach(uVar9,0);" (assignment_expression "uVar9 = bfd_printable_arch_mach(uVar9,0)" identifier = (call_expression "bfd_printable_arch_mach(uVar9,0)" identifier (argument_list "(uVar9,0)" ( identifier , number_literal )))) ;) (expression_statement "pcVar3 = (char *)dcgettext(0,"can\'t disassemble for architecture %s\n",5);" (assignment_expression "pcVar3 = (char *)dcgettext(0,"can\'t disassemble for architecture %s\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"can\'t disassemble for architecture %s\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"can\'t disassemble for architecture %s\n",5)" identifier (argument_list "(0,"can\'t disassemble for architecture %s\n",5)" ( number_literal , (string_literal ""can\'t disassemble for architecture %s\n"" " string_content escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "non_fatal(pcVar3,uVar9);" (call_expression "non_fatal(pcVar3,uVar9)" identifier (argument_list "(pcVar3,uVar9)" ( identifier , identifier ))) ;) (expression_statement "exit_status = 1;" (assignment_expression "exit_status = 1" identifier = number_literal) ;) }) (else_clause "else {\n    local_a8 = abfd->xvec->flavour;\n    local_a4 = bfd_get_arch(abfd);\n    local_a0 = bfd_get_mach(abfd);\n    local_24 = disassembler_options;\n    local_44 = bfd_octets_per_byte(abfd);\n    local_40 = 8;\n    local_3c = 3;\n    local_38 = 0;\n    bVar2 = abfd->xvec->byteorder;\n    if (bVar2 == BFD_ENDIAN_BIG) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (bVar2 == BFD_ENDIAN_LITTLE) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }\n    disassemble_init_for_target(&has_reloc);\n    lVar4 = (*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound)(abfd);\n    if (lVar4 < 0) {\n      if (dump_dynamic_reloc_info != 0) {\nLAB_00017bfe:\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(abfd->filename);\n      }\n    }\n    else if (lVar4 != 0) {\n      aux.dynrelbuf = (arelent **)xmalloc(lVar4);\n      aux.dynrelcount = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,aux.dynrelbuf,dynsyms);\n      if (aux.dynrelcount < 0) goto LAB_00017bfe;\n      qsort(aux.dynrelbuf,aux.dynrelcount,4,compare_relocs);\n    }\n    local_84 = sorted_syms;\n    local_7c = sorted_symcount;\n    bfd_map_over_sections(abfd,disassemble_section,&has_reloc);\n    if (aux.dynrelbuf != (arelent **)0x0) {\n      free(aux.dynrelbuf);\n    }\n    free(sorted_syms);\n  }" else (compound_statement "{\n    local_a8 = abfd->xvec->flavour;\n    local_a4 = bfd_get_arch(abfd);\n    local_a0 = bfd_get_mach(abfd);\n    local_24 = disassembler_options;\n    local_44 = bfd_octets_per_byte(abfd);\n    local_40 = 8;\n    local_3c = 3;\n    local_38 = 0;\n    bVar2 = abfd->xvec->byteorder;\n    if (bVar2 == BFD_ENDIAN_BIG) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (bVar2 == BFD_ENDIAN_LITTLE) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }\n    disassemble_init_for_target(&has_reloc);\n    lVar4 = (*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound)(abfd);\n    if (lVar4 < 0) {\n      if (dump_dynamic_reloc_info != 0) {\nLAB_00017bfe:\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(abfd->filename);\n      }\n    }\n    else if (lVar4 != 0) {\n      aux.dynrelbuf = (arelent **)xmalloc(lVar4);\n      aux.dynrelcount = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,aux.dynrelbuf,dynsyms);\n      if (aux.dynrelcount < 0) goto LAB_00017bfe;\n      qsort(aux.dynrelbuf,aux.dynrelcount,4,compare_relocs);\n    }\n    local_84 = sorted_syms;\n    local_7c = sorted_symcount;\n    bfd_map_over_sections(abfd,disassemble_section,&has_reloc);\n    if (aux.dynrelbuf != (arelent **)0x0) {\n      free(aux.dynrelbuf);\n    }\n    free(sorted_syms);\n  }" { (expression_statement "local_a8 = abfd->xvec->flavour;" (assignment_expression "local_a8 = abfd->xvec->flavour" identifier = (field_expression "abfd->xvec->flavour" (field_expression "abfd->xvec" identifier -> field_identifier) -> field_identifier)) ;) (expression_statement "local_a4 = bfd_get_arch(abfd);" (assignment_expression "local_a4 = bfd_get_arch(abfd)" identifier = (call_expression "bfd_get_arch(abfd)" identifier (argument_list "(abfd)" ( identifier )))) ;) (expression_statement "local_a0 = bfd_get_mach(abfd);" (assignment_expression "local_a0 = bfd_get_mach(abfd)" identifier = (call_expression "bfd_get_mach(abfd)" identifier (argument_list "(abfd)" ( identifier )))) ;) (expression_statement "local_24 = disassembler_options;" (assignment_expression "local_24 = disassembler_options" identifier = identifier) ;) (expression_statement "local_44 = bfd_octets_per_byte(abfd);" (assignment_expression "local_44 = bfd_octets_per_byte(abfd)" identifier = (call_expression "bfd_octets_per_byte(abfd)" identifier (argument_list "(abfd)" ( identifier )))) ;) (expression_statement "local_40 = 8;" (assignment_expression "local_40 = 8" identifier = number_literal) ;) (expression_statement "local_3c = 3;" (assignment_expression "local_3c = 3" identifier = number_literal) ;) (expression_statement "local_38 = 0;" (assignment_expression "local_38 = 0" identifier = number_literal) ;) (expression_statement "bVar2 = abfd->xvec->byteorder;" (assignment_expression "bVar2 = abfd->xvec->byteorder" identifier = (field_expression "abfd->xvec->byteorder" (field_expression "abfd->xvec" identifier -> field_identifier) -> field_identifier)) ;) (if_statement "if (bVar2 == BFD_ENDIAN_BIG) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (bVar2 == BFD_ENDIAN_LITTLE) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }" if (parenthesized_expression "(bVar2 == BFD_ENDIAN_BIG)" ( (binary_expression "bVar2 == BFD_ENDIAN_BIG" identifier == identifier) )) (compound_statement "{\n      local_9c = 0;\n      local_48 = 0;\n    }" { (expression_statement "local_9c = 0;" (assignment_expression "local_9c = 0" identifier = number_literal) ;) (expression_statement "local_48 = 0;" (assignment_expression "local_48 = 0" identifier = number_literal) ;) }) (else_clause "else if (bVar2 == BFD_ENDIAN_LITTLE) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }" else (if_statement "if (bVar2 == BFD_ENDIAN_LITTLE) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }" if (parenthesized_expression "(bVar2 == BFD_ENDIAN_LITTLE)" ( (binary_expression "bVar2 == BFD_ENDIAN_LITTLE" identifier == identifier) )) (compound_statement "{\n      local_9c = 1;\n      local_48 = 1;\n    }" { (expression_statement "local_9c = 1;" (assignment_expression "local_9c = 1" identifier = number_literal) ;) (expression_statement "local_48 = 1;" (assignment_expression "local_48 = 1" identifier = number_literal) ;) }) (else_clause "else {\n      local_9c = 2;\n    }" else (compound_statement "{\n      local_9c = 2;\n    }" { (expression_statement "local_9c = 2;" (assignment_expression "local_9c = 2" identifier = number_literal) ;) }))))) (expression_statement "disassemble_init_for_target(&has_reloc);" (call_expression "disassemble_init_for_target(&has_reloc)" identifier (argument_list "(&has_reloc)" ( (pointer_expression "&has_reloc" & identifier) ))) ;) (expression_statement "lVar4 = (*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound)(abfd);" (assignment_expression "lVar4 = (*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound)(abfd)" identifier = (call_expression "(*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound)(abfd)" (parenthesized_expression "(*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound)" ( (pointer_expression "*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound" * (field_expression "abfd->xvec->_bfd_get_dynamic_reloc_upper_bound" (field_expression "abfd->xvec" identifier -> field_identifier) -> field_identifier)) )) (argument_list "(abfd)" ( identifier )))) ;) (if_statement "if (lVar4 < 0) {\n      if (dump_dynamic_reloc_info != 0) {\nLAB_00017bfe:\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(abfd->filename);\n      }\n    }\n    else if (lVar4 != 0) {\n      aux.dynrelbuf = (arelent **)xmalloc(lVar4);\n      aux.dynrelcount = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,aux.dynrelbuf,dynsyms);\n      if (aux.dynrelcount < 0) goto LAB_00017bfe;\n      qsort(aux.dynrelbuf,aux.dynrelcount,4,compare_relocs);\n    }" if (parenthesized_expression "(lVar4 < 0)" ( (binary_expression "lVar4 < 0" identifier < number_literal) )) (compound_statement "{\n      if (dump_dynamic_reloc_info != 0) {\nLAB_00017bfe:\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(abfd->filename);\n      }\n    }" { (if_statement "if (dump_dynamic_reloc_info != 0) {\nLAB_00017bfe:\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(abfd->filename);\n      }" if (parenthesized_expression "(dump_dynamic_reloc_info != 0)" ( (binary_expression "dump_dynamic_reloc_info != 0" identifier != number_literal) )) (compound_statement "{\nLAB_00017bfe:\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(abfd->filename);\n      }" { (labeled_statement "LAB_00017bfe:\n                    /* WARNING: Subroutine does not return */\n        bfd_fatal(abfd->filename);" statement_identifier : comment (expression_statement "bfd_fatal(abfd->filename);" (call_expression "bfd_fatal(abfd->filename)" identifier (argument_list "(abfd->filename)" ( (field_expression "abfd->filename" identifier -> field_identifier) ))) ;)) })) }) (else_clause "else if (lVar4 != 0) {\n      aux.dynrelbuf = (arelent **)xmalloc(lVar4);\n      aux.dynrelcount = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,aux.dynrelbuf,dynsyms);\n      if (aux.dynrelcount < 0) goto LAB_00017bfe;\n      qsort(aux.dynrelbuf,aux.dynrelcount,4,compare_relocs);\n    }" else (if_statement "if (lVar4 != 0) {\n      aux.dynrelbuf = (arelent **)xmalloc(lVar4);\n      aux.dynrelcount = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,aux.dynrelbuf,dynsyms);\n      if (aux.dynrelcount < 0) goto LAB_00017bfe;\n      qsort(aux.dynrelbuf,aux.dynrelcount,4,compare_relocs);\n    }" if (parenthesized_expression "(lVar4 != 0)" ( (binary_expression "lVar4 != 0" identifier != number_literal) )) (compound_statement "{\n      aux.dynrelbuf = (arelent **)xmalloc(lVar4);\n      aux.dynrelcount = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,aux.dynrelbuf,dynsyms);\n      if (aux.dynrelcount < 0) goto LAB_00017bfe;\n      qsort(aux.dynrelbuf,aux.dynrelcount,4,compare_relocs);\n    }" { (expression_statement "aux.dynrelbuf = (arelent **)xmalloc(lVar4);" (assignment_expression "aux.dynrelbuf = (arelent **)xmalloc(lVar4)" (field_expression "aux.dynrelbuf" identifier . field_identifier) = (cast_expression "(arelent **)xmalloc(lVar4)" ( (type_descriptor "arelent **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "xmalloc(lVar4)" identifier (argument_list "(lVar4)" ( identifier ))))) ;) (expression_statement "aux.dynrelcount = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,aux.dynrelbuf,dynsyms);" (assignment_expression "aux.dynrelcount = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,aux.dynrelbuf,dynsyms)" (field_expression "aux.dynrelcount" identifier . field_identifier) = (call_expression "(*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,aux.dynrelbuf,dynsyms)" (parenthesized_expression "(*abfd->xvec->_bfd_canonicalize_dynamic_reloc)" ( (pointer_expression "*abfd->xvec->_bfd_canonicalize_dynamic_reloc" * (field_expression "abfd->xvec->_bfd_canonicalize_dynamic_reloc" (field_expression "abfd->xvec" identifier -> field_identifier) -> field_identifier)) )) (argument_list "(abfd,aux.dynrelbuf,dynsyms)" ( identifier , (field_expression "aux.dynrelbuf" identifier . field_identifier) , identifier )))) ;) (if_statement "if (aux.dynrelcount < 0) goto LAB_00017bfe;" if (parenthesized_expression "(aux.dynrelcount < 0)" ( (binary_expression "aux.dynrelcount < 0" (field_expression "aux.dynrelcount" identifier . field_identifier) < number_literal) )) (goto_statement "goto LAB_00017bfe;" goto statement_identifier ;)) (expression_statement "qsort(aux.dynrelbuf,aux.dynrelcount,4,compare_relocs);" (call_expression "qsort(aux.dynrelbuf,aux.dynrelcount,4,compare_relocs)" identifier (argument_list "(aux.dynrelbuf,aux.dynrelcount,4,compare_relocs)" ( (field_expression "aux.dynrelbuf" identifier . field_identifier) , (field_expression "aux.dynrelcount" identifier . field_identifier) , number_literal , identifier ))) ;) })))) (expression_statement "local_84 = sorted_syms;" (assignment_expression "local_84 = sorted_syms" identifier = identifier) ;) (expression_statement "local_7c = sorted_symcount;" (assignment_expression "local_7c = sorted_symcount" identifier = identifier) ;) (expression_statement "bfd_map_over_sections(abfd,disassemble_section,&has_reloc);" (call_expression "bfd_map_over_sections(abfd,disassemble_section,&has_reloc)" identifier (argument_list "(abfd,disassemble_section,&has_reloc)" ( identifier , identifier , (pointer_expression "&has_reloc" & identifier) ))) ;) (if_statement "if (aux.dynrelbuf != (arelent **)0x0) {\n      free(aux.dynrelbuf);\n    }" if (parenthesized_expression "(aux.dynrelbuf != (arelent **)0x0)" ( (binary_expression "aux.dynrelbuf != (arelent **)0x0" (field_expression "aux.dynrelbuf" identifier . field_identifier) != (cast_expression "(arelent **)0x0" ( (type_descriptor "arelent **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\n      free(aux.dynrelbuf);\n    }" { (expression_statement "free(aux.dynrelbuf);" (call_expression "free(aux.dynrelbuf)" identifier (argument_list "(aux.dynrelbuf)" ( (field_expression "aux.dynrelbuf" identifier . field_identifier) ))) ;) })) (expression_statement "free(sorted_syms);" (call_expression "free(sorted_syms)" identifier (argument_list "(sorted_syms)" ( identifier ))) ;) }))) (labeled_statement "joined_r0x0001721a:\n  if (dump_debugging != 0) {\n    dhandle = read_debugging_info(abfd,syms,symcount,1);\n    if (dhandle == (void *)0x0) {\n      if (dump_dwarf_section_info == 0) {\n        dwarf_select_sections_all();\n        dump_dwarf(abfd);\n      }\n    }\n    else {\n      bVar11 = print_debugging_info\n                         (*(FILE **)PTR_stdout_0006ffdc,dhandle,abfd,syms,\n                          (_func_char_ptr_bfd_ptr_char_ptr_int *)PTR_bfd_demangle_0006ffe4,\n                          (uint)(dump_debugging_tags != 0));\n      if (bVar11 == 0) {\n        pcVar3 = abfd->filename;\n        pcVar12 = (char *)dcgettext(0,"%s: printing debugging information failed",5);\n        non_fatal(pcVar12,pcVar3);\n        exit_status = 1;\n      }\n    }\n  }" statement_identifier : (if_statement "if (dump_debugging != 0) {\n    dhandle = read_debugging_info(abfd,syms,symcount,1);\n    if (dhandle == (void *)0x0) {\n      if (dump_dwarf_section_info == 0) {\n        dwarf_select_sections_all();\n        dump_dwarf(abfd);\n      }\n    }\n    else {\n      bVar11 = print_debugging_info\n                         (*(FILE **)PTR_stdout_0006ffdc,dhandle,abfd,syms,\n                          (_func_char_ptr_bfd_ptr_char_ptr_int *)PTR_bfd_demangle_0006ffe4,\n                          (uint)(dump_debugging_tags != 0));\n      if (bVar11 == 0) {\n        pcVar3 = abfd->filename;\n        pcVar12 = (char *)dcgettext(0,"%s: printing debugging information failed",5);\n        non_fatal(pcVar12,pcVar3);\n        exit_status = 1;\n      }\n    }\n  }" if (parenthesized_expression "(dump_debugging != 0)" ( (binary_expression "dump_debugging != 0" identifier != number_literal) )) (compound_statement "{\n    dhandle = read_debugging_info(abfd,syms,symcount,1);\n    if (dhandle == (void *)0x0) {\n      if (dump_dwarf_section_info == 0) {\n        dwarf_select_sections_all();\n        dump_dwarf(abfd);\n      }\n    }\n    else {\n      bVar11 = print_debugging_info\n                         (*(FILE **)PTR_stdout_0006ffdc,dhandle,abfd,syms,\n                          (_func_char_ptr_bfd_ptr_char_ptr_int *)PTR_bfd_demangle_0006ffe4,\n                          (uint)(dump_debugging_tags != 0));\n      if (bVar11 == 0) {\n        pcVar3 = abfd->filename;\n        pcVar12 = (char *)dcgettext(0,"%s: printing debugging information failed",5);\n        non_fatal(pcVar12,pcVar3);\n        exit_status = 1;\n      }\n    }\n  }" { (expression_statement "dhandle = read_debugging_info(abfd,syms,symcount,1);" (assignment_expression "dhandle = read_debugging_info(abfd,syms,symcount,1)" identifier = (call_expression "read_debugging_info(abfd,syms,symcount,1)" identifier (argument_list "(abfd,syms,symcount,1)" ( identifier , identifier , identifier , number_literal )))) ;) (if_statement "if (dhandle == (void *)0x0) {\n      if (dump_dwarf_section_info == 0) {\n        dwarf_select_sections_all();\n        dump_dwarf(abfd);\n      }\n    }\n    else {\n      bVar11 = print_debugging_info\n                         (*(FILE **)PTR_stdout_0006ffdc,dhandle,abfd,syms,\n                          (_func_char_ptr_bfd_ptr_char_ptr_int *)PTR_bfd_demangle_0006ffe4,\n                          (uint)(dump_debugging_tags != 0));\n      if (bVar11 == 0) {\n        pcVar3 = abfd->filename;\n        pcVar12 = (char *)dcgettext(0,"%s: printing debugging information failed",5);\n        non_fatal(pcVar12,pcVar3);\n        exit_status = 1;\n      }\n    }" if (parenthesized_expression "(dhandle == (void *)0x0)" ( (binary_expression "dhandle == (void *)0x0" identifier == (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if (dump_dwarf_section_info == 0) {\n        dwarf_select_sections_all();\n        dump_dwarf(abfd);\n      }\n    }" { (if_statement "if (dump_dwarf_section_info == 0) {\n        dwarf_select_sections_all();\n        dump_dwarf(abfd);\n      }" if (parenthesized_expression "(dump_dwarf_section_info == 0)" ( (binary_expression "dump_dwarf_section_info == 0" identifier == number_literal) )) (compound_statement "{\n        dwarf_select_sections_all();\n        dump_dwarf(abfd);\n      }" { (expression_statement "dwarf_select_sections_all();" (call_expression "dwarf_select_sections_all()" identifier (argument_list "()" ( ))) ;) (expression_statement "dump_dwarf(abfd);" (call_expression "dump_dwarf(abfd)" identifier (argument_list "(abfd)" ( identifier ))) ;) })) }) (else_clause "else {\n      bVar11 = print_debugging_info\n                         (*(FILE **)PTR_stdout_0006ffdc,dhandle,abfd,syms,\n                          (_func_char_ptr_bfd_ptr_char_ptr_int *)PTR_bfd_demangle_0006ffe4,\n                          (uint)(dump_debugging_tags != 0));\n      if (bVar11 == 0) {\n        pcVar3 = abfd->filename;\n        pcVar12 = (char *)dcgettext(0,"%s: printing debugging information failed",5);\n        non_fatal(pcVar12,pcVar3);\n        exit_status = 1;\n      }\n    }" else (compound_statement "{\n      bVar11 = print_debugging_info\n                         (*(FILE **)PTR_stdout_0006ffdc,dhandle,abfd,syms,\n                          (_func_char_ptr_bfd_ptr_char_ptr_int *)PTR_bfd_demangle_0006ffe4,\n                          (uint)(dump_debugging_tags != 0));\n      if (bVar11 == 0) {\n        pcVar3 = abfd->filename;\n        pcVar12 = (char *)dcgettext(0,"%s: printing debugging information failed",5);\n        non_fatal(pcVar12,pcVar3);\n        exit_status = 1;\n      }\n    }" { (expression_statement "bVar11 = print_debugging_info\n                         (*(FILE **)PTR_stdout_0006ffdc,dhandle,abfd,syms,\n                          (_func_char_ptr_bfd_ptr_char_ptr_int *)PTR_bfd_demangle_0006ffe4,\n                          (uint)(dump_debugging_tags != 0));" (assignment_expression "bVar11 = print_debugging_info\n                         (*(FILE **)PTR_stdout_0006ffdc,dhandle,abfd,syms,\n                          (_func_char_ptr_bfd_ptr_char_ptr_int *)PTR_bfd_demangle_0006ffe4,\n                          (uint)(dump_debugging_tags != 0))" identifier = (call_expression "print_debugging_info\n                         (*(FILE **)PTR_stdout_0006ffdc,dhandle,abfd,syms,\n                          (_func_char_ptr_bfd_ptr_char_ptr_int *)PTR_bfd_demangle_0006ffe4,\n                          (uint)(dump_debugging_tags != 0))" identifier (argument_list "(*(FILE **)PTR_stdout_0006ffdc,dhandle,abfd,syms,\n                          (_func_char_ptr_bfd_ptr_char_ptr_int *)PTR_bfd_demangle_0006ffe4,\n                          (uint)(dump_debugging_tags != 0))" ( (pointer_expression "*(FILE **)PTR_stdout_0006ffdc" * (cast_expression "(FILE **)PTR_stdout_0006ffdc" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) , identifier , identifier , identifier , (cast_expression "(_func_char_ptr_bfd_ptr_char_ptr_int *)PTR_bfd_demangle_0006ffe4" ( (type_descriptor "_func_char_ptr_bfd_ptr_char_ptr_int *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (call_expression "(uint)(dump_debugging_tags != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(dump_debugging_tags != 0)" ( (binary_expression "dump_debugging_tags != 0" identifier != number_literal) ))) )))) ;) (if_statement "if (bVar11 == 0) {\n        pcVar3 = abfd->filename;\n        pcVar12 = (char *)dcgettext(0,"%s: printing debugging information failed",5);\n        non_fatal(pcVar12,pcVar3);\n        exit_status = 1;\n      }" if (parenthesized_expression "(bVar11 == 0)" ( (binary_expression "bVar11 == 0" identifier == number_literal) )) (compound_statement "{\n        pcVar3 = abfd->filename;\n        pcVar12 = (char *)dcgettext(0,"%s: printing debugging information failed",5);\n        non_fatal(pcVar12,pcVar3);\n        exit_status = 1;\n      }" { (expression_statement "pcVar3 = abfd->filename;" (assignment_expression "pcVar3 = abfd->filename" identifier = (field_expression "abfd->filename" identifier -> field_identifier)) ;) (expression_statement "pcVar12 = (char *)dcgettext(0,"%s: printing debugging information failed",5);" (assignment_expression "pcVar12 = (char *)dcgettext(0,"%s: printing debugging information failed",5)" identifier = (cast_expression "(char *)dcgettext(0,"%s: printing debugging information failed",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"%s: printing debugging information failed",5)" identifier (argument_list "(0,"%s: printing debugging information failed",5)" ( number_literal , (string_literal ""%s: printing debugging information failed"" " string_content ") , number_literal ))))) ;) (expression_statement "non_fatal(pcVar12,pcVar3);" (call_expression "non_fatal(pcVar12,pcVar3)" identifier (argument_list "(pcVar12,pcVar3)" ( identifier , identifier ))) ;) (expression_statement "exit_status = 1;" (assignment_expression "exit_status = 1" identifier = number_literal) ;) })) }))) }))) (if_statement "if (syms != (asymbol **)0x0) {\n    free(syms);\n    syms = (asymbol **)0x0;\n  }" if (parenthesized_expression "(syms != (asymbol **)0x0)" ( (binary_expression "syms != (asymbol **)0x0" identifier != (cast_expression "(asymbol **)0x0" ( (type_descriptor "asymbol **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\n    free(syms);\n    syms = (asymbol **)0x0;\n  }" { (expression_statement "free(syms);" (call_expression "free(syms)" identifier (argument_list "(syms)" ( identifier ))) ;) (expression_statement "syms = (asymbol **)0x0;" (assignment_expression "syms = (asymbol **)0x0" identifier = (cast_expression "(asymbol **)0x0" ( (type_descriptor "asymbol **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) })) (if_statement "if (dynsyms != (asymbol **)0x0) {\n    free(dynsyms);\n    dynsyms = (asymbol **)0x0;\n  }" if (parenthesized_expression "(dynsyms != (asymbol **)0x0)" ( (binary_expression "dynsyms != (asymbol **)0x0" identifier != (cast_expression "(asymbol **)0x0" ( (type_descriptor "asymbol **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\n    free(dynsyms);\n    dynsyms = (asymbol **)0x0;\n  }" { (expression_statement "free(dynsyms);" (call_expression "free(dynsyms)" identifier (argument_list "(dynsyms)" ( identifier ))) ;) (expression_statement "dynsyms = (asymbol **)0x0;" (assignment_expression "dynsyms = (asymbol **)0x0" identifier = (cast_expression "(asymbol **)0x0" ( (type_descriptor "asymbol **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) })) (if_statement "if (synthsyms != (asymbol *)0x0) {\n    free(synthsyms);\n    synthsyms = (asymbol *)0x0;\n  }" if (parenthesized_expression "(synthsyms != (asymbol *)0x0)" ( (binary_expression "synthsyms != (asymbol *)0x0" identifier != (cast_expression "(asymbol *)0x0" ( (type_descriptor "asymbol *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    free(synthsyms);\n    synthsyms = (asymbol *)0x0;\n  }" { (expression_statement "free(synthsyms);" (call_expression "free(synthsyms)" identifier (argument_list "(synthsyms)" ( identifier ))) ;) (expression_statement "synthsyms = (asymbol *)0x0;" (assignment_expression "synthsyms = (asymbol *)0x0" identifier = (cast_expression "(asymbol *)0x0" ( (type_descriptor "asymbol *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (expression_statement "symcount = 0;" (assignment_expression "symcount = 0" identifier = number_literal) ;) (expression_statement "dynsymcount = 0;" (assignment_expression "dynsymcount = 0" identifier = number_literal) ;) (expression_statement "synthcount = 0;" (assignment_expression "synthcount = 0" identifier = number_literal) ;) (return_statement "return;" return ;) })))
(translation_unit "void __regparm3 FUN_00016fd0(undefined4 *param_1)\n\n{\n  int *piVar1;\n  undefined4 uVar2;\n  int iVar3;\n  int *__dest;\n  undefined *puVar4;\n  undefined4 *puVar5;\n  char *pcVar6;\n  undefined4 uVar7;\n  int iVar8;\n  uint uVar9;\n  void *pvVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  undefined4 *puVar13;\n  byte *pbVar14;\n  undefined4 *puVar15;\n  bool bVar16;\n  bool bVar17;\n  bool bVar18;\n  byte bVar19;\n  int *local_f0;\n  int *local_ec;\n  int local_e8;\n  undefined4 *local_d0 [2];\n  undefined4 local_c8;\n  void *local_c4;\n  size_t local_c0;\n  int local_bc;\n  undefined4 local_b8;\n  uint local_b4 [2];\n  undefined4 **local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  undefined4 local_a0;\n  undefined4 local_9c;\n  int *local_84;\n  size_t local_7c;\n  code *local_68;\n  code *local_64;\n  undefined4 local_48;\n  undefined4 local_44;\n  undefined4 local_40;\n  undefined4 local_3c;\n  undefined4 local_38;\n  undefined4 local_24;\n  undefined4 uStack_14;\n  \n  bVar19 = 0;\n  uStack_14 = 0x16fdb;\n  if (DAT_0007109c == 0) {\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\nLAB_00017807:\n      uVar2 = *param_1;\n      uVar7 = *(undefined4 *)param_1[1];\n      pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(pcVar6,uVar2,uVar7);\n    }\n  }\n  else {\n    local_b4[0] = (uint)param_1[10] >> 5 & 1;\n    bfd_map_over_sections(param_1,FUN_000160d0,local_b4);\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) goto LAB_00017807;\n  }\n  if (DAT_000710ec != 0) {\n    FUN_000457f0(*(undefined4 *)PTR_stdout_0006ffdc,param_1,1,0);\n  }\n  if (DAT_00071100 != 0) {\n    uVar2 = bfd_get_mach(param_1);\n    uVar7 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar7,uVar2);\n    pcVar6 = (char *)dcgettext(0,"architecture: %s, ",5);\n    printf(pcVar6,uVar2);\n    uVar9 = param_1[10];\n    pcVar6 = (char *)dcgettext(0,"flags 0x%08x:\n",5);\n    printf(pcVar6,uVar9 >> 5 & 0x3ff);\n    pcVar6 = "";\n    uVar9 = (uint)param_1[10] >> 5;\n    if ((uVar9 & 1) != 0) {\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 2) != 0) {\n      printf("%s%s",pcVar6,"EXEC_P");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 4) != 0) {\n      printf("%s%s",pcVar6,"HAS_LINENO");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 8) != 0) {\n      printf("%s%s",pcVar6,"HAS_DEBUG");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x10) != 0) {\n      printf("%s%s",pcVar6,"HAS_SYMS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x20) != 0) {\n      printf("%s%s",pcVar6,"HAS_LOCALS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x40) != 0) {\n      printf("%s%s",pcVar6,"DYNAMIC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x80) != 0) {\n      printf("%s%s",pcVar6,"WP_TEXT");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x100) != 0) {\n      printf("%s%s",pcVar6,"D_PAGED");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x200) != 0) {\n      printf("%s%s",pcVar6,"BFD_IS_RELAXABLE");\n    }\n    pcVar6 = (char *)dcgettext(0,"\nstart address 0x",5);\n    printf(pcVar6);\n    bfd_fprintf_vma(param_1,*(undefined4 *)PTR_stdout_0006ffdc,param_1[0x1c]);\n    putchar(10);\n  }\n  if (DAT_000710e8 != 0) {\n    (**(code **)(param_1[1] + 0xc4))(param_1,*(undefined4 *)PTR_stdout_0006ffdc);\n  }\n  if (DAT_000710e4 != 0) {\n    uVar2 = dcgettext(0,"option -P/--private not supported by this file",5);\n    FUN_000451b0(uVar2);\n  }\n  if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\n    putc(10,*(FILE **)PTR_stdout_0006ffdc);\n  }\n  pvVar10 = DAT_0007106c;\n  if ((((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0) || DAT_000710ac != 0) ||\n      DAT_000710d0 != 0) {\n    if ((*(byte *)((int)param_1 + 0x29) & 2) == 0) {\n      DAT_00071068 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);\n      if (iVar3 < 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    \n        FUN_000450f0(uVar2);\n      }\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);\n      if (DAT_00071068 < 0) goto LAB_00017bfe;\n    }\n  }\n  DAT_0007106c = pvVar10;\n  if (DAT_00071104 != 0) {\n    local_b4[0] = 0xd;\n    pcVar6 = (char *)dcgettext(0,"Sections:\n",5);\n    printf(pcVar6);\n    if (DAT_000710b4 != 0) {\n      bfd_map_over_sections(param_1,FUN_00016d60,local_b4);\n    }\n    uVar9 = local_b4[0];\n    pcVar6 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);\n    printf(pcVar6,uVar9,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);\n    if (DAT_000710b4 != 0) {\n      pcVar6 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar6);\n    }\n    putchar(10);\n    bfd_map_over_sections(param_1,FUN_00016160,local_b4);\n  }\n  if (DAT_000710f8 == 0 && DAT_000710f0 == 0) {\n    if (DAT_000710c4 != 0) {\n      iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n      pvVar10 = DAT_0007105c;\n      if (0 < iVar3) goto LAB_000170fd;\n      goto LAB_00017145;\n    }\n  }\n  else {\nLAB_000170fd:\n    iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n    if (iVar3 < 0) {\n      uVar2 = *param_1;\n      if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {\n                    \n        FUN_000450f0(uVar2);\n      }\n      uVar7 = dcgettext(0,"%s: not a dynamic object",5);\n      FUN_000451b0(uVar7,uVar2);\n      DAT_00071110 = 1;\n      DAT_00071050 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);\n      if (DAT_00071050 < 0) goto LAB_00017bfe;\n    }\nLAB_00017145:\n    DAT_0007105c = pvVar10;\n    if ((DAT_000710c4 != 0) &&\n       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0)) {\n      DAT_00071054 = 0;\n    }\n  }\n  if (DAT_000710fc != 0) {\n    FUN_00016db0();\n  }\n  if (DAT_000710f8 != 0) {\n    FUN_00016db0();\n  }\n  if (DAT_000710d0 != 0) {\n    FUN_00015f30();\n  }\n  if (DAT_000710cc != 0) {\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n  }\n  if (DAT_000710f4 == 0) {\nLAB_00017355:\n    if (DAT_000710f0 != 0) {\n      if (DAT_000710c4 != 0) goto LAB_00017371;\n      iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n      if (iVar3 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (iVar3 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }\n    }\nLAB_000171f0:\n    if (DAT_00071108 != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(param_1,FUN_00016840,0);\n    }\n    if (DAT_000710c4 == 0) goto joined_r0x0001721a;\n  }\n  else {\n    if (DAT_000710c4 == 0) {\n      bfd_map_over_sections(param_1,FUN_00018570,0);\n      goto LAB_00017355;\n    }\n    if (DAT_000710f0 == 0) goto LAB_000171f0;\nLAB_00017371:\n    if (DAT_00071108 != 0) goto LAB_00017ac0;\n  }\n  DAT_0007102c = 0;\n  DAT_00071038 = 0;\n  DAT_00071034 = 0xffffffff;\n  DAT_00071060 = DAT_00071068;\n  if (DAT_00071068 == 0) {\n    DAT_00071060 = DAT_00071050;\n  }\n  DAT_00071030 = 0;\n  __dest = (int *)xmalloc((DAT_00071060 + DAT_00071054) * 4);\n  local_e8 = DAT_00071060;\n  pvVar10 = DAT_0007106c;\n  if (DAT_00071068 == 0) {\n    pvVar10 = DAT_0007105c;\n  }\n  DAT_00071064 = __dest;\n  memcpy(__dest,pvVar10,DAT_00071060 << 2);\n  puVar4 = PTR__bfd_std_section_0006ffd8 + 0xa8;\n  local_f0 = __dest;\n  local_ec = __dest;\nLAB_00017428:\n  local_e8 = local_e8 + -1;\n  if (-1 < local_e8) {\n    while( true ) {\n      piVar1 = local_f0 + 1;\n      iVar3 = *local_f0;\n      pbVar12 = *(byte **)(iVar3 + 4);\n      local_f0 = piVar1;\n      if ((pbVar12 == (byte *)0x0) || (*pbVar12 == 0)) break;\n      bVar16 = false;\n      bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0;\n      if (!bVar18) {\n        iVar8 = 4;\n        pbVar11 = pbVar12;\n        pbVar14 = &DAT_0004c8bd;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);\n        bVar17 = false;\n        bVar16 = (!bVar16 && !bVar18) == bVar16;\n        if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }\n      }\n      if ((*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)) break;\n      *local_ec = iVar3;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }\n    goto LAB_00017428;\n  }\nLAB_000174ab:\n  DAT_00071060 = (int)local_ec - (int)__dest >> 2;\n  if (0 < DAT_00071054) {\n    DAT_00071060 = DAT_00071060 + DAT_00071054;\n    pvVar10 = DAT_00071058;\n    do {\n      *local_ec = (int)pvVar10;\n      local_ec = local_ec + 1;\n      pvVar10 = (void *)((int)pvVar10 + 0x18);\n    } while (__dest + DAT_00071060 != local_ec);\n  }\n  qsort(__dest,DAT_00071060,4,FUN_00015990);\n  init_disassemble_info(local_b4,*(undefined4 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0);\n  local_ac = local_d0;\n  local_68 = FUN_000153c0;\n  local_64 = FUN_00014c20;\n  local_c8 = 0;\n  local_c4 = (void *)0x0;\n  local_c0 = 0;\n  local_b8 = 0;\n  local_d0[0] = param_1;\n  if (DAT_00071074 != 0) {\n    iVar8 = bfd_scan_arch(DAT_00071074);\n    iVar3 = DAT_00071074;\n    if (iVar8 == 0) {\n      uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    \n      FUN_00045180(uVar2,iVar3);\n    }\n    param_1[0x20] = iVar8;\n  }\n  if (DAT_00070228 != 2) {\n    puVar5 = (undefined4 *)xmalloc(0x1c4);\n    puVar13 = (undefined4 *)param_1[1];\n    iVar3 = (int)puVar5 - (int)((uint)(puVar5 + 1) & 0xfffffffc);\n    *puVar5 = *puVar13;\n    puVar5[0x70] = puVar13[0x70];\n    puVar13 = (undefined4 *)((int)puVar13 - iVar3);\n    puVar15 = (undefined4 *)((uint)(puVar5 + 1) & 0xfffffffc);\n    for (uVar9 = iVar3 + 0x1c4U >> 2; uVar9 != 0; uVar9 = uVar9 - 1) {\n      *puVar15 = *puVar13;\n      puVar13 = puVar13 + (uint)bVar19 * -2 + 1;\n      puVar15 = puVar15 + (uint)bVar19 * -2 + 1;\n    }\n    param_1[1] = puVar5;\n    puVar5[2] = DAT_00070228;\n  }\n  uVar2 = bfd_get_mach(param_1);\n  iVar3 = *(int *)(param_1[1] + 8);\n  uVar7 = bfd_get_arch(param_1);\n  local_bc = disassembler(uVar7,iVar3 == 0,uVar2,param_1);\n  if (local_bc == 0) {\n    uVar2 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar2,0);\n    uVar7 = dcgettext(0,"can\'t disassemble for architecture %s\n",5);\n    FUN_000451b0(uVar7,uVar2);\n    DAT_00071110 = 1;\n  }\n  else {\n    local_a8 = *(undefined4 *)(param_1[1] + 4);\n    local_a4 = bfd_get_arch(param_1);\n    local_a0 = bfd_get_mach(param_1);\n    local_24 = DAT_00071070;\n    local_44 = bfd_octets_per_byte(param_1);\n    local_40 = 8;\n    local_3c = 3;\n    local_38 = 0;\n    if (*(int *)(param_1[1] + 8) == 0) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (*(int *)(param_1[1] + 8) == 1) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }\n    disassemble_init_for_target(local_b4);\n    iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n    if (iVar3 < 0) {\n      if (DAT_000710f0 != 0) {\nLAB_00017bfe:\n                    \n        FUN_000450f0(*param_1);\n      }\n    }\n    else if (iVar3 != 0) {\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }\n    local_84 = DAT_00071064;\n    local_7c = DAT_00071060;\n    bfd_map_over_sections(param_1,FUN_00018770,local_b4);\n    if (local_c4 != (void *)0x0) {\n      free(local_c4);\n    }\n    free(DAT_00071064);\n  }\njoined_r0x0001721a:\n  if (DAT_000710ac != 0) {\n    iVar3 = FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1);\n    if (iVar3 == 0) {\n      if (DAT_000710d0 == 0) {\n        FUN_00034950();\n        FUN_00015f30();\n      }\n    }\n    else {\n      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);\n      if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }\n    }\n  }\n  if (DAT_0007106c != (void *)0x0) {\n    free(DAT_0007106c);\n    DAT_0007106c = (void *)0x0;\n  }\n  if (DAT_0007105c != (void *)0x0) {\n    free(DAT_0007105c);\n    DAT_0007105c = (void *)0x0;\n  }\n  if (DAT_00071058 != (void *)0x0) {\n    free(DAT_00071058);\n    DAT_00071058 = (void *)0x0;\n  }\n  DAT_00071068 = 0;\n  DAT_00071050 = 0;\n  DAT_00071054 = 0;\n  return;\n}\n\n" (function_definition "void __regparm3 FUN_00016fd0(undefined4 *param_1)\n\n{\n  int *piVar1;\n  undefined4 uVar2;\n  int iVar3;\n  int *__dest;\n  undefined *puVar4;\n  undefined4 *puVar5;\n  char *pcVar6;\n  undefined4 uVar7;\n  int iVar8;\n  uint uVar9;\n  void *pvVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  undefined4 *puVar13;\n  byte *pbVar14;\n  undefined4 *puVar15;\n  bool bVar16;\n  bool bVar17;\n  bool bVar18;\n  byte bVar19;\n  int *local_f0;\n  int *local_ec;\n  int local_e8;\n  undefined4 *local_d0 [2];\n  undefined4 local_c8;\n  void *local_c4;\n  size_t local_c0;\n  int local_bc;\n  undefined4 local_b8;\n  uint local_b4 [2];\n  undefined4 **local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  undefined4 local_a0;\n  undefined4 local_9c;\n  int *local_84;\n  size_t local_7c;\n  code *local_68;\n  code *local_64;\n  undefined4 local_48;\n  undefined4 local_44;\n  undefined4 local_40;\n  undefined4 local_3c;\n  undefined4 local_38;\n  undefined4 local_24;\n  undefined4 uStack_14;\n  \n  bVar19 = 0;\n  uStack_14 = 0x16fdb;\n  if (DAT_0007109c == 0) {\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\nLAB_00017807:\n      uVar2 = *param_1;\n      uVar7 = *(undefined4 *)param_1[1];\n      pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(pcVar6,uVar2,uVar7);\n    }\n  }\n  else {\n    local_b4[0] = (uint)param_1[10] >> 5 & 1;\n    bfd_map_over_sections(param_1,FUN_000160d0,local_b4);\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) goto LAB_00017807;\n  }\n  if (DAT_000710ec != 0) {\n    FUN_000457f0(*(undefined4 *)PTR_stdout_0006ffdc,param_1,1,0);\n  }\n  if (DAT_00071100 != 0) {\n    uVar2 = bfd_get_mach(param_1);\n    uVar7 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar7,uVar2);\n    pcVar6 = (char *)dcgettext(0,"architecture: %s, ",5);\n    printf(pcVar6,uVar2);\n    uVar9 = param_1[10];\n    pcVar6 = (char *)dcgettext(0,"flags 0x%08x:\n",5);\n    printf(pcVar6,uVar9 >> 5 & 0x3ff);\n    pcVar6 = "";\n    uVar9 = (uint)param_1[10] >> 5;\n    if ((uVar9 & 1) != 0) {\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 2) != 0) {\n      printf("%s%s",pcVar6,"EXEC_P");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 4) != 0) {\n      printf("%s%s",pcVar6,"HAS_LINENO");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 8) != 0) {\n      printf("%s%s",pcVar6,"HAS_DEBUG");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x10) != 0) {\n      printf("%s%s",pcVar6,"HAS_SYMS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x20) != 0) {\n      printf("%s%s",pcVar6,"HAS_LOCALS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x40) != 0) {\n      printf("%s%s",pcVar6,"DYNAMIC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x80) != 0) {\n      printf("%s%s",pcVar6,"WP_TEXT");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x100) != 0) {\n      printf("%s%s",pcVar6,"D_PAGED");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x200) != 0) {\n      printf("%s%s",pcVar6,"BFD_IS_RELAXABLE");\n    }\n    pcVar6 = (char *)dcgettext(0,"\nstart address 0x",5);\n    printf(pcVar6);\n    bfd_fprintf_vma(param_1,*(undefined4 *)PTR_stdout_0006ffdc,param_1[0x1c]);\n    putchar(10);\n  }\n  if (DAT_000710e8 != 0) {\n    (**(code **)(param_1[1] + 0xc4))(param_1,*(undefined4 *)PTR_stdout_0006ffdc);\n  }\n  if (DAT_000710e4 != 0) {\n    uVar2 = dcgettext(0,"option -P/--private not supported by this file",5);\n    FUN_000451b0(uVar2);\n  }\n  if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\n    putc(10,*(FILE **)PTR_stdout_0006ffdc);\n  }\n  pvVar10 = DAT_0007106c;\n  if ((((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0) || DAT_000710ac != 0) ||\n      DAT_000710d0 != 0) {\n    if ((*(byte *)((int)param_1 + 0x29) & 2) == 0) {\n      DAT_00071068 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);\n      if (iVar3 < 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    \n        FUN_000450f0(uVar2);\n      }\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);\n      if (DAT_00071068 < 0) goto LAB_00017bfe;\n    }\n  }\n  DAT_0007106c = pvVar10;\n  if (DAT_00071104 != 0) {\n    local_b4[0] = 0xd;\n    pcVar6 = (char *)dcgettext(0,"Sections:\n",5);\n    printf(pcVar6);\n    if (DAT_000710b4 != 0) {\n      bfd_map_over_sections(param_1,FUN_00016d60,local_b4);\n    }\n    uVar9 = local_b4[0];\n    pcVar6 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);\n    printf(pcVar6,uVar9,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);\n    if (DAT_000710b4 != 0) {\n      pcVar6 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar6);\n    }\n    putchar(10);\n    bfd_map_over_sections(param_1,FUN_00016160,local_b4);\n  }\n  if (DAT_000710f8 == 0 && DAT_000710f0 == 0) {\n    if (DAT_000710c4 != 0) {\n      iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n      pvVar10 = DAT_0007105c;\n      if (0 < iVar3) goto LAB_000170fd;\n      goto LAB_00017145;\n    }\n  }\n  else {\nLAB_000170fd:\n    iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n    if (iVar3 < 0) {\n      uVar2 = *param_1;\n      if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {\n                    \n        FUN_000450f0(uVar2);\n      }\n      uVar7 = dcgettext(0,"%s: not a dynamic object",5);\n      FUN_000451b0(uVar7,uVar2);\n      DAT_00071110 = 1;\n      DAT_00071050 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);\n      if (DAT_00071050 < 0) goto LAB_00017bfe;\n    }\nLAB_00017145:\n    DAT_0007105c = pvVar10;\n    if ((DAT_000710c4 != 0) &&\n       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0)) {\n      DAT_00071054 = 0;\n    }\n  }\n  if (DAT_000710fc != 0) {\n    FUN_00016db0();\n  }\n  if (DAT_000710f8 != 0) {\n    FUN_00016db0();\n  }\n  if (DAT_000710d0 != 0) {\n    FUN_00015f30();\n  }\n  if (DAT_000710cc != 0) {\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n  }\n  if (DAT_000710f4 == 0) {\nLAB_00017355:\n    if (DAT_000710f0 != 0) {\n      if (DAT_000710c4 != 0) goto LAB_00017371;\n      iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n      if (iVar3 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (iVar3 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }\n    }\nLAB_000171f0:\n    if (DAT_00071108 != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(param_1,FUN_00016840,0);\n    }\n    if (DAT_000710c4 == 0) goto joined_r0x0001721a;\n  }\n  else {\n    if (DAT_000710c4 == 0) {\n      bfd_map_over_sections(param_1,FUN_00018570,0);\n      goto LAB_00017355;\n    }\n    if (DAT_000710f0 == 0) goto LAB_000171f0;\nLAB_00017371:\n    if (DAT_00071108 != 0) goto LAB_00017ac0;\n  }\n  DAT_0007102c = 0;\n  DAT_00071038 = 0;\n  DAT_00071034 = 0xffffffff;\n  DAT_00071060 = DAT_00071068;\n  if (DAT_00071068 == 0) {\n    DAT_00071060 = DAT_00071050;\n  }\n  DAT_00071030 = 0;\n  __dest = (int *)xmalloc((DAT_00071060 + DAT_00071054) * 4);\n  local_e8 = DAT_00071060;\n  pvVar10 = DAT_0007106c;\n  if (DAT_00071068 == 0) {\n    pvVar10 = DAT_0007105c;\n  }\n  DAT_00071064 = __dest;\n  memcpy(__dest,pvVar10,DAT_00071060 << 2);\n  puVar4 = PTR__bfd_std_section_0006ffd8 + 0xa8;\n  local_f0 = __dest;\n  local_ec = __dest;\nLAB_00017428:\n  local_e8 = local_e8 + -1;\n  if (-1 < local_e8) {\n    while( true ) {\n      piVar1 = local_f0 + 1;\n      iVar3 = *local_f0;\n      pbVar12 = *(byte **)(iVar3 + 4);\n      local_f0 = piVar1;\n      if ((pbVar12 == (byte *)0x0) || (*pbVar12 == 0)) break;\n      bVar16 = false;\n      bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0;\n      if (!bVar18) {\n        iVar8 = 4;\n        pbVar11 = pbVar12;\n        pbVar14 = &DAT_0004c8bd;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);\n        bVar17 = false;\n        bVar16 = (!bVar16 && !bVar18) == bVar16;\n        if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }\n      }\n      if ((*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)) break;\n      *local_ec = iVar3;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }\n    goto LAB_00017428;\n  }\nLAB_000174ab:\n  DAT_00071060 = (int)local_ec - (int)__dest >> 2;\n  if (0 < DAT_00071054) {\n    DAT_00071060 = DAT_00071060 + DAT_00071054;\n    pvVar10 = DAT_00071058;\n    do {\n      *local_ec = (int)pvVar10;\n      local_ec = local_ec + 1;\n      pvVar10 = (void *)((int)pvVar10 + 0x18);\n    } while (__dest + DAT_00071060 != local_ec);\n  }\n  qsort(__dest,DAT_00071060,4,FUN_00015990);\n  init_disassemble_info(local_b4,*(undefined4 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0);\n  local_ac = local_d0;\n  local_68 = FUN_000153c0;\n  local_64 = FUN_00014c20;\n  local_c8 = 0;\n  local_c4 = (void *)0x0;\n  local_c0 = 0;\n  local_b8 = 0;\n  local_d0[0] = param_1;\n  if (DAT_00071074 != 0) {\n    iVar8 = bfd_scan_arch(DAT_00071074);\n    iVar3 = DAT_00071074;\n    if (iVar8 == 0) {\n      uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    \n      FUN_00045180(uVar2,iVar3);\n    }\n    param_1[0x20] = iVar8;\n  }\n  if (DAT_00070228 != 2) {\n    puVar5 = (undefined4 *)xmalloc(0x1c4);\n    puVar13 = (undefined4 *)param_1[1];\n    iVar3 = (int)puVar5 - (int)((uint)(puVar5 + 1) & 0xfffffffc);\n    *puVar5 = *puVar13;\n    puVar5[0x70] = puVar13[0x70];\n    puVar13 = (undefined4 *)((int)puVar13 - iVar3);\n    puVar15 = (undefined4 *)((uint)(puVar5 + 1) & 0xfffffffc);\n    for (uVar9 = iVar3 + 0x1c4U >> 2; uVar9 != 0; uVar9 = uVar9 - 1) {\n      *puVar15 = *puVar13;\n      puVar13 = puVar13 + (uint)bVar19 * -2 + 1;\n      puVar15 = puVar15 + (uint)bVar19 * -2 + 1;\n    }\n    param_1[1] = puVar5;\n    puVar5[2] = DAT_00070228;\n  }\n  uVar2 = bfd_get_mach(param_1);\n  iVar3 = *(int *)(param_1[1] + 8);\n  uVar7 = bfd_get_arch(param_1);\n  local_bc = disassembler(uVar7,iVar3 == 0,uVar2,param_1);\n  if (local_bc == 0) {\n    uVar2 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar2,0);\n    uVar7 = dcgettext(0,"can\'t disassemble for architecture %s\n",5);\n    FUN_000451b0(uVar7,uVar2);\n    DAT_00071110 = 1;\n  }\n  else {\n    local_a8 = *(undefined4 *)(param_1[1] + 4);\n    local_a4 = bfd_get_arch(param_1);\n    local_a0 = bfd_get_mach(param_1);\n    local_24 = DAT_00071070;\n    local_44 = bfd_octets_per_byte(param_1);\n    local_40 = 8;\n    local_3c = 3;\n    local_38 = 0;\n    if (*(int *)(param_1[1] + 8) == 0) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (*(int *)(param_1[1] + 8) == 1) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }\n    disassemble_init_for_target(local_b4);\n    iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n    if (iVar3 < 0) {\n      if (DAT_000710f0 != 0) {\nLAB_00017bfe:\n                    \n        FUN_000450f0(*param_1);\n      }\n    }\n    else if (iVar3 != 0) {\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }\n    local_84 = DAT_00071064;\n    local_7c = DAT_00071060;\n    bfd_map_over_sections(param_1,FUN_00018770,local_b4);\n    if (local_c4 != (void *)0x0) {\n      free(local_c4);\n    }\n    free(DAT_00071064);\n  }\njoined_r0x0001721a:\n  if (DAT_000710ac != 0) {\n    iVar3 = FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1);\n    if (iVar3 == 0) {\n      if (DAT_000710d0 == 0) {\n        FUN_00034950();\n        FUN_00015f30();\n      }\n    }\n    else {\n      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);\n      if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }\n    }\n  }\n  if (DAT_0007106c != (void *)0x0) {\n    free(DAT_0007106c);\n    DAT_0007106c = (void *)0x0;\n  }\n  if (DAT_0007105c != (void *)0x0) {\n    free(DAT_0007105c);\n    DAT_0007105c = (void *)0x0;\n  }\n  if (DAT_00071058 != (void *)0x0) {\n    free(DAT_00071058);\n    DAT_00071058 = (void *)0x0;\n  }\n  DAT_00071068 = 0;\n  DAT_00071050 = 0;\n  DAT_00071054 = 0;\n  return;\n}" primitive_type (ERROR "__regparm3" identifier) (function_declarator "FUN_00016fd0(undefined4 *param_1)" identifier (parameter_list "(undefined4 *param_1)" ( (parameter_declaration "undefined4 *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) ))) (compound_statement "{\n  int *piVar1;\n  undefined4 uVar2;\n  int iVar3;\n  int *__dest;\n  undefined *puVar4;\n  undefined4 *puVar5;\n  char *pcVar6;\n  undefined4 uVar7;\n  int iVar8;\n  uint uVar9;\n  void *pvVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  undefined4 *puVar13;\n  byte *pbVar14;\n  undefined4 *puVar15;\n  bool bVar16;\n  bool bVar17;\n  bool bVar18;\n  byte bVar19;\n  int *local_f0;\n  int *local_ec;\n  int local_e8;\n  undefined4 *local_d0 [2];\n  undefined4 local_c8;\n  void *local_c4;\n  size_t local_c0;\n  int local_bc;\n  undefined4 local_b8;\n  uint local_b4 [2];\n  undefined4 **local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  undefined4 local_a0;\n  undefined4 local_9c;\n  int *local_84;\n  size_t local_7c;\n  code *local_68;\n  code *local_64;\n  undefined4 local_48;\n  undefined4 local_44;\n  undefined4 local_40;\n  undefined4 local_3c;\n  undefined4 local_38;\n  undefined4 local_24;\n  undefined4 uStack_14;\n  \n  bVar19 = 0;\n  uStack_14 = 0x16fdb;\n  if (DAT_0007109c == 0) {\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\nLAB_00017807:\n      uVar2 = *param_1;\n      uVar7 = *(undefined4 *)param_1[1];\n      pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(pcVar6,uVar2,uVar7);\n    }\n  }\n  else {\n    local_b4[0] = (uint)param_1[10] >> 5 & 1;\n    bfd_map_over_sections(param_1,FUN_000160d0,local_b4);\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) goto LAB_00017807;\n  }\n  if (DAT_000710ec != 0) {\n    FUN_000457f0(*(undefined4 *)PTR_stdout_0006ffdc,param_1,1,0);\n  }\n  if (DAT_00071100 != 0) {\n    uVar2 = bfd_get_mach(param_1);\n    uVar7 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar7,uVar2);\n    pcVar6 = (char *)dcgettext(0,"architecture: %s, ",5);\n    printf(pcVar6,uVar2);\n    uVar9 = param_1[10];\n    pcVar6 = (char *)dcgettext(0,"flags 0x%08x:\n",5);\n    printf(pcVar6,uVar9 >> 5 & 0x3ff);\n    pcVar6 = "";\n    uVar9 = (uint)param_1[10] >> 5;\n    if ((uVar9 & 1) != 0) {\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 2) != 0) {\n      printf("%s%s",pcVar6,"EXEC_P");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 4) != 0) {\n      printf("%s%s",pcVar6,"HAS_LINENO");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 8) != 0) {\n      printf("%s%s",pcVar6,"HAS_DEBUG");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x10) != 0) {\n      printf("%s%s",pcVar6,"HAS_SYMS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x20) != 0) {\n      printf("%s%s",pcVar6,"HAS_LOCALS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x40) != 0) {\n      printf("%s%s",pcVar6,"DYNAMIC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x80) != 0) {\n      printf("%s%s",pcVar6,"WP_TEXT");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x100) != 0) {\n      printf("%s%s",pcVar6,"D_PAGED");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x200) != 0) {\n      printf("%s%s",pcVar6,"BFD_IS_RELAXABLE");\n    }\n    pcVar6 = (char *)dcgettext(0,"\nstart address 0x",5);\n    printf(pcVar6);\n    bfd_fprintf_vma(param_1,*(undefined4 *)PTR_stdout_0006ffdc,param_1[0x1c]);\n    putchar(10);\n  }\n  if (DAT_000710e8 != 0) {\n    (**(code **)(param_1[1] + 0xc4))(param_1,*(undefined4 *)PTR_stdout_0006ffdc);\n  }\n  if (DAT_000710e4 != 0) {\n    uVar2 = dcgettext(0,"option -P/--private not supported by this file",5);\n    FUN_000451b0(uVar2);\n  }\n  if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\n    putc(10,*(FILE **)PTR_stdout_0006ffdc);\n  }\n  pvVar10 = DAT_0007106c;\n  if ((((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0) || DAT_000710ac != 0) ||\n      DAT_000710d0 != 0) {\n    if ((*(byte *)((int)param_1 + 0x29) & 2) == 0) {\n      DAT_00071068 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);\n      if (iVar3 < 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    \n        FUN_000450f0(uVar2);\n      }\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);\n      if (DAT_00071068 < 0) goto LAB_00017bfe;\n    }\n  }\n  DAT_0007106c = pvVar10;\n  if (DAT_00071104 != 0) {\n    local_b4[0] = 0xd;\n    pcVar6 = (char *)dcgettext(0,"Sections:\n",5);\n    printf(pcVar6);\n    if (DAT_000710b4 != 0) {\n      bfd_map_over_sections(param_1,FUN_00016d60,local_b4);\n    }\n    uVar9 = local_b4[0];\n    pcVar6 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);\n    printf(pcVar6,uVar9,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);\n    if (DAT_000710b4 != 0) {\n      pcVar6 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar6);\n    }\n    putchar(10);\n    bfd_map_over_sections(param_1,FUN_00016160,local_b4);\n  }\n  if (DAT_000710f8 == 0 && DAT_000710f0 == 0) {\n    if (DAT_000710c4 != 0) {\n      iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n      pvVar10 = DAT_0007105c;\n      if (0 < iVar3) goto LAB_000170fd;\n      goto LAB_00017145;\n    }\n  }\n  else {\nLAB_000170fd:\n    iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n    if (iVar3 < 0) {\n      uVar2 = *param_1;\n      if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {\n                    \n        FUN_000450f0(uVar2);\n      }\n      uVar7 = dcgettext(0,"%s: not a dynamic object",5);\n      FUN_000451b0(uVar7,uVar2);\n      DAT_00071110 = 1;\n      DAT_00071050 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);\n      if (DAT_00071050 < 0) goto LAB_00017bfe;\n    }\nLAB_00017145:\n    DAT_0007105c = pvVar10;\n    if ((DAT_000710c4 != 0) &&\n       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0)) {\n      DAT_00071054 = 0;\n    }\n  }\n  if (DAT_000710fc != 0) {\n    FUN_00016db0();\n  }\n  if (DAT_000710f8 != 0) {\n    FUN_00016db0();\n  }\n  if (DAT_000710d0 != 0) {\n    FUN_00015f30();\n  }\n  if (DAT_000710cc != 0) {\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n  }\n  if (DAT_000710f4 == 0) {\nLAB_00017355:\n    if (DAT_000710f0 != 0) {\n      if (DAT_000710c4 != 0) goto LAB_00017371;\n      iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n      if (iVar3 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (iVar3 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }\n    }\nLAB_000171f0:\n    if (DAT_00071108 != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(param_1,FUN_00016840,0);\n    }\n    if (DAT_000710c4 == 0) goto joined_r0x0001721a;\n  }\n  else {\n    if (DAT_000710c4 == 0) {\n      bfd_map_over_sections(param_1,FUN_00018570,0);\n      goto LAB_00017355;\n    }\n    if (DAT_000710f0 == 0) goto LAB_000171f0;\nLAB_00017371:\n    if (DAT_00071108 != 0) goto LAB_00017ac0;\n  }\n  DAT_0007102c = 0;\n  DAT_00071038 = 0;\n  DAT_00071034 = 0xffffffff;\n  DAT_00071060 = DAT_00071068;\n  if (DAT_00071068 == 0) {\n    DAT_00071060 = DAT_00071050;\n  }\n  DAT_00071030 = 0;\n  __dest = (int *)xmalloc((DAT_00071060 + DAT_00071054) * 4);\n  local_e8 = DAT_00071060;\n  pvVar10 = DAT_0007106c;\n  if (DAT_00071068 == 0) {\n    pvVar10 = DAT_0007105c;\n  }\n  DAT_00071064 = __dest;\n  memcpy(__dest,pvVar10,DAT_00071060 << 2);\n  puVar4 = PTR__bfd_std_section_0006ffd8 + 0xa8;\n  local_f0 = __dest;\n  local_ec = __dest;\nLAB_00017428:\n  local_e8 = local_e8 + -1;\n  if (-1 < local_e8) {\n    while( true ) {\n      piVar1 = local_f0 + 1;\n      iVar3 = *local_f0;\n      pbVar12 = *(byte **)(iVar3 + 4);\n      local_f0 = piVar1;\n      if ((pbVar12 == (byte *)0x0) || (*pbVar12 == 0)) break;\n      bVar16 = false;\n      bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0;\n      if (!bVar18) {\n        iVar8 = 4;\n        pbVar11 = pbVar12;\n        pbVar14 = &DAT_0004c8bd;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);\n        bVar17 = false;\n        bVar16 = (!bVar16 && !bVar18) == bVar16;\n        if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }\n      }\n      if ((*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)) break;\n      *local_ec = iVar3;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }\n    goto LAB_00017428;\n  }\nLAB_000174ab:\n  DAT_00071060 = (int)local_ec - (int)__dest >> 2;\n  if (0 < DAT_00071054) {\n    DAT_00071060 = DAT_00071060 + DAT_00071054;\n    pvVar10 = DAT_00071058;\n    do {\n      *local_ec = (int)pvVar10;\n      local_ec = local_ec + 1;\n      pvVar10 = (void *)((int)pvVar10 + 0x18);\n    } while (__dest + DAT_00071060 != local_ec);\n  }\n  qsort(__dest,DAT_00071060,4,FUN_00015990);\n  init_disassemble_info(local_b4,*(undefined4 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0);\n  local_ac = local_d0;\n  local_68 = FUN_000153c0;\n  local_64 = FUN_00014c20;\n  local_c8 = 0;\n  local_c4 = (void *)0x0;\n  local_c0 = 0;\n  local_b8 = 0;\n  local_d0[0] = param_1;\n  if (DAT_00071074 != 0) {\n    iVar8 = bfd_scan_arch(DAT_00071074);\n    iVar3 = DAT_00071074;\n    if (iVar8 == 0) {\n      uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    \n      FUN_00045180(uVar2,iVar3);\n    }\n    param_1[0x20] = iVar8;\n  }\n  if (DAT_00070228 != 2) {\n    puVar5 = (undefined4 *)xmalloc(0x1c4);\n    puVar13 = (undefined4 *)param_1[1];\n    iVar3 = (int)puVar5 - (int)((uint)(puVar5 + 1) & 0xfffffffc);\n    *puVar5 = *puVar13;\n    puVar5[0x70] = puVar13[0x70];\n    puVar13 = (undefined4 *)((int)puVar13 - iVar3);\n    puVar15 = (undefined4 *)((uint)(puVar5 + 1) & 0xfffffffc);\n    for (uVar9 = iVar3 + 0x1c4U >> 2; uVar9 != 0; uVar9 = uVar9 - 1) {\n      *puVar15 = *puVar13;\n      puVar13 = puVar13 + (uint)bVar19 * -2 + 1;\n      puVar15 = puVar15 + (uint)bVar19 * -2 + 1;\n    }\n    param_1[1] = puVar5;\n    puVar5[2] = DAT_00070228;\n  }\n  uVar2 = bfd_get_mach(param_1);\n  iVar3 = *(int *)(param_1[1] + 8);\n  uVar7 = bfd_get_arch(param_1);\n  local_bc = disassembler(uVar7,iVar3 == 0,uVar2,param_1);\n  if (local_bc == 0) {\n    uVar2 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar2,0);\n    uVar7 = dcgettext(0,"can\'t disassemble for architecture %s\n",5);\n    FUN_000451b0(uVar7,uVar2);\n    DAT_00071110 = 1;\n  }\n  else {\n    local_a8 = *(undefined4 *)(param_1[1] + 4);\n    local_a4 = bfd_get_arch(param_1);\n    local_a0 = bfd_get_mach(param_1);\n    local_24 = DAT_00071070;\n    local_44 = bfd_octets_per_byte(param_1);\n    local_40 = 8;\n    local_3c = 3;\n    local_38 = 0;\n    if (*(int *)(param_1[1] + 8) == 0) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (*(int *)(param_1[1] + 8) == 1) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }\n    disassemble_init_for_target(local_b4);\n    iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n    if (iVar3 < 0) {\n      if (DAT_000710f0 != 0) {\nLAB_00017bfe:\n                    \n        FUN_000450f0(*param_1);\n      }\n    }\n    else if (iVar3 != 0) {\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }\n    local_84 = DAT_00071064;\n    local_7c = DAT_00071060;\n    bfd_map_over_sections(param_1,FUN_00018770,local_b4);\n    if (local_c4 != (void *)0x0) {\n      free(local_c4);\n    }\n    free(DAT_00071064);\n  }\njoined_r0x0001721a:\n  if (DAT_000710ac != 0) {\n    iVar3 = FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1);\n    if (iVar3 == 0) {\n      if (DAT_000710d0 == 0) {\n        FUN_00034950();\n        FUN_00015f30();\n      }\n    }\n    else {\n      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);\n      if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }\n    }\n  }\n  if (DAT_0007106c != (void *)0x0) {\n    free(DAT_0007106c);\n    DAT_0007106c = (void *)0x0;\n  }\n  if (DAT_0007105c != (void *)0x0) {\n    free(DAT_0007105c);\n    DAT_0007105c = (void *)0x0;\n  }\n  if (DAT_00071058 != (void *)0x0) {\n    free(DAT_00071058);\n    DAT_00071058 = (void *)0x0;\n  }\n  DAT_00071068 = 0;\n  DAT_00071050 = 0;\n  DAT_00071054 = 0;\n  return;\n}" { (declaration "int *piVar1;" primitive_type (pointer_declarator "*piVar1" * identifier) ;) (declaration "undefined4 uVar2;" type_identifier identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "int *__dest;" primitive_type (pointer_declarator "*__dest" * identifier) ;) (declaration "undefined *puVar4;" type_identifier (pointer_declarator "*puVar4" * identifier) ;) (declaration "undefined4 *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "char *pcVar6;" primitive_type (pointer_declarator "*pcVar6" * identifier) ;) (declaration "undefined4 uVar7;" type_identifier identifier ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "uint uVar9;" type_identifier identifier ;) (declaration "void *pvVar10;" primitive_type (pointer_declarator "*pvVar10" * identifier) ;) (declaration "byte *pbVar11;" type_identifier (pointer_declarator "*pbVar11" * identifier) ;) (declaration "byte *pbVar12;" type_identifier (pointer_declarator "*pbVar12" * identifier) ;) (declaration "undefined4 *puVar13;" type_identifier (pointer_declarator "*puVar13" * identifier) ;) (declaration "byte *pbVar14;" type_identifier (pointer_declarator "*pbVar14" * identifier) ;) (declaration "undefined4 *puVar15;" type_identifier (pointer_declarator "*puVar15" * identifier) ;) (declaration "bool bVar16;" primitive_type identifier ;) (declaration "bool bVar17;" primitive_type identifier ;) (declaration "bool bVar18;" primitive_type identifier ;) (declaration "byte bVar19;" type_identifier identifier ;) (declaration "int *local_f0;" primitive_type (pointer_declarator "*local_f0" * identifier) ;) (declaration "int *local_ec;" primitive_type (pointer_declarator "*local_ec" * identifier) ;) (declaration "int local_e8;" primitive_type identifier ;) (declaration "undefined4 *local_d0 [2];" type_identifier (pointer_declarator "*local_d0 [2]" * (array_declarator "local_d0 [2]" identifier [ number_literal ])) ;) (declaration "undefined4 local_c8;" type_identifier identifier ;) (declaration "void *local_c4;" primitive_type (pointer_declarator "*local_c4" * identifier) ;) (declaration "size_t local_c0;" primitive_type identifier ;) (declaration "int local_bc;" primitive_type identifier ;) (declaration "undefined4 local_b8;" type_identifier identifier ;) (declaration "uint local_b4 [2];" type_identifier (array_declarator "local_b4 [2]" identifier [ number_literal ]) ;) (declaration "undefined4 **local_ac;" type_identifier (pointer_declarator "**local_ac" * (pointer_declarator "*local_ac" * identifier)) ;) (declaration "undefined4 local_a8;" type_identifier identifier ;) (declaration "undefined4 local_a4;" type_identifier identifier ;) (declaration "undefined4 local_a0;" type_identifier identifier ;) (declaration "undefined4 local_9c;" type_identifier identifier ;) (declaration "int *local_84;" primitive_type (pointer_declarator "*local_84" * identifier) ;) (declaration "size_t local_7c;" primitive_type identifier ;) (declaration "code *local_68;" type_identifier (pointer_declarator "*local_68" * identifier) ;) (declaration "code *local_64;" type_identifier (pointer_declarator "*local_64" * identifier) ;) (declaration "undefined4 local_48;" type_identifier identifier ;) (declaration "undefined4 local_44;" type_identifier identifier ;) (declaration "undefined4 local_40;" type_identifier identifier ;) (declaration "undefined4 local_3c;" type_identifier identifier ;) (declaration "undefined4 local_38;" type_identifier identifier ;) (declaration "undefined4 local_24;" type_identifier identifier ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "bVar19 = 0;" (assignment_expression "bVar19 = 0" identifier = number_literal) ;) (expression_statement "uStack_14 = 0x16fdb;" (assignment_expression "uStack_14 = 0x16fdb" identifier = number_literal) ;) (if_statement "if (DAT_0007109c == 0) {\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\nLAB_00017807:\n      uVar2 = *param_1;\n      uVar7 = *(undefined4 *)param_1[1];\n      pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(pcVar6,uVar2,uVar7);\n    }\n  }\n  else {\n    local_b4[0] = (uint)param_1[10] >> 5 & 1;\n    bfd_map_over_sections(param_1,FUN_000160d0,local_b4);\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) goto LAB_00017807;\n  }" if (parenthesized_expression "(DAT_0007109c == 0)" ( (binary_expression "DAT_0007109c == 0" identifier == number_literal) )) (compound_statement "{\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\nLAB_00017807:\n      uVar2 = *param_1;\n      uVar7 = *(undefined4 *)param_1[1];\n      pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(pcVar6,uVar2,uVar7);\n    }\n  }" { (if_statement "if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\nLAB_00017807:\n      uVar2 = *param_1;\n      uVar7 = *(undefined4 *)param_1[1];\n      pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(pcVar6,uVar2,uVar7);\n    }" if (parenthesized_expression "(DAT_000710a8 == 0 && DAT_000710a4 == 0)" ( (binary_expression "DAT_000710a8 == 0 && DAT_000710a4 == 0" (binary_expression "DAT_000710a8 == 0" identifier == number_literal) && (binary_expression "DAT_000710a4 == 0" identifier == number_literal)) )) (compound_statement "{\nLAB_00017807:\n      uVar2 = *param_1;\n      uVar7 = *(undefined4 *)param_1[1];\n      pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(pcVar6,uVar2,uVar7);\n    }" { (labeled_statement "LAB_00017807:\n      uVar2 = *param_1;" statement_identifier : (expression_statement "uVar2 = *param_1;" (assignment_expression "uVar2 = *param_1" identifier = (pointer_expression "*param_1" * identifier)) ;)) (expression_statement "uVar7 = *(undefined4 *)param_1[1];" (assignment_expression "uVar7 = *(undefined4 *)param_1[1]" identifier = (pointer_expression "*(undefined4 *)param_1[1]" * (cast_expression "(undefined4 *)param_1[1]" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[1]" identifier [ number_literal ])))) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\n%s:     file format %s\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\n%s:     file format %s\n",5)" identifier (argument_list "(0,"\n%s:     file format %s\n",5)" ( number_literal , (string_literal ""\n%s:     file format %s\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar2,uVar7);" (call_expression "printf(pcVar6,uVar2,uVar7)" identifier (argument_list "(pcVar6,uVar2,uVar7)" ( identifier , identifier , identifier ))) ;) })) }) (else_clause "else {\n    local_b4[0] = (uint)param_1[10] >> 5 & 1;\n    bfd_map_over_sections(param_1,FUN_000160d0,local_b4);\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) goto LAB_00017807;\n  }" else (compound_statement "{\n    local_b4[0] = (uint)param_1[10] >> 5 & 1;\n    bfd_map_over_sections(param_1,FUN_000160d0,local_b4);\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) goto LAB_00017807;\n  }" { (expression_statement "local_b4[0] = (uint)param_1[10] >> 5 & 1;" (assignment_expression "local_b4[0] = (uint)param_1[10] >> 5 & 1" (subscript_expression "local_b4[0]" identifier [ number_literal ]) = (binary_expression "(uint)param_1[10] >> 5 & 1" (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[10]" identifier [ number_literal ])) >> number_literal) & number_literal)) ;) (expression_statement "bfd_map_over_sections(param_1,FUN_000160d0,local_b4);" (call_expression "bfd_map_over_sections(param_1,FUN_000160d0,local_b4)" identifier (argument_list "(param_1,FUN_000160d0,local_b4)" ( identifier , identifier , identifier ))) ;) (if_statement "if (DAT_000710a8 == 0 && DAT_000710a4 == 0) goto LAB_00017807;" if (parenthesized_expression "(DAT_000710a8 == 0 && DAT_000710a4 == 0)" ( (binary_expression "DAT_000710a8 == 0 && DAT_000710a4 == 0" (binary_expression "DAT_000710a8 == 0" identifier == number_literal) && (binary_expression "DAT_000710a4 == 0" identifier == number_literal)) )) (goto_statement "goto LAB_00017807;" goto statement_identifier ;)) }))) (if_statement "if (DAT_000710ec != 0) {\n    FUN_000457f0(*(undefined4 *)PTR_stdout_0006ffdc,param_1,1,0);\n  }" if (parenthesized_expression "(DAT_000710ec != 0)" ( (binary_expression "DAT_000710ec != 0" identifier != number_literal) )) (compound_statement "{\n    FUN_000457f0(*(undefined4 *)PTR_stdout_0006ffdc,param_1,1,0);\n  }" { (expression_statement "FUN_000457f0(*(undefined4 *)PTR_stdout_0006ffdc,param_1,1,0);" (call_expression "FUN_000457f0(*(undefined4 *)PTR_stdout_0006ffdc,param_1,1,0)" identifier (argument_list "(*(undefined4 *)PTR_stdout_0006ffdc,param_1,1,0)" ( (pointer_expression "*(undefined4 *)PTR_stdout_0006ffdc" * (cast_expression "(undefined4 *)PTR_stdout_0006ffdc" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , identifier , number_literal , number_literal ))) ;) })) (if_statement "if (DAT_00071100 != 0) {\n    uVar2 = bfd_get_mach(param_1);\n    uVar7 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar7,uVar2);\n    pcVar6 = (char *)dcgettext(0,"architecture: %s, ",5);\n    printf(pcVar6,uVar2);\n    uVar9 = param_1[10];\n    pcVar6 = (char *)dcgettext(0,"flags 0x%08x:\n",5);\n    printf(pcVar6,uVar9 >> 5 & 0x3ff);\n    pcVar6 = "";\n    uVar9 = (uint)param_1[10] >> 5;\n    if ((uVar9 & 1) != 0) {\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 2) != 0) {\n      printf("%s%s",pcVar6,"EXEC_P");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 4) != 0) {\n      printf("%s%s",pcVar6,"HAS_LINENO");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 8) != 0) {\n      printf("%s%s",pcVar6,"HAS_DEBUG");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x10) != 0) {\n      printf("%s%s",pcVar6,"HAS_SYMS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x20) != 0) {\n      printf("%s%s",pcVar6,"HAS_LOCALS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x40) != 0) {\n      printf("%s%s",pcVar6,"DYNAMIC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x80) != 0) {\n      printf("%s%s",pcVar6,"WP_TEXT");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x100) != 0) {\n      printf("%s%s",pcVar6,"D_PAGED");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x200) != 0) {\n      printf("%s%s",pcVar6,"BFD_IS_RELAXABLE");\n    }\n    pcVar6 = (char *)dcgettext(0,"\nstart address 0x",5);\n    printf(pcVar6);\n    bfd_fprintf_vma(param_1,*(undefined4 *)PTR_stdout_0006ffdc,param_1[0x1c]);\n    putchar(10);\n  }" if (parenthesized_expression "(DAT_00071100 != 0)" ( (binary_expression "DAT_00071100 != 0" identifier != number_literal) )) (compound_statement "{\n    uVar2 = bfd_get_mach(param_1);\n    uVar7 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar7,uVar2);\n    pcVar6 = (char *)dcgettext(0,"architecture: %s, ",5);\n    printf(pcVar6,uVar2);\n    uVar9 = param_1[10];\n    pcVar6 = (char *)dcgettext(0,"flags 0x%08x:\n",5);\n    printf(pcVar6,uVar9 >> 5 & 0x3ff);\n    pcVar6 = "";\n    uVar9 = (uint)param_1[10] >> 5;\n    if ((uVar9 & 1) != 0) {\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 2) != 0) {\n      printf("%s%s",pcVar6,"EXEC_P");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 4) != 0) {\n      printf("%s%s",pcVar6,"HAS_LINENO");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 8) != 0) {\n      printf("%s%s",pcVar6,"HAS_DEBUG");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x10) != 0) {\n      printf("%s%s",pcVar6,"HAS_SYMS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x20) != 0) {\n      printf("%s%s",pcVar6,"HAS_LOCALS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x40) != 0) {\n      printf("%s%s",pcVar6,"DYNAMIC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x80) != 0) {\n      printf("%s%s",pcVar6,"WP_TEXT");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x100) != 0) {\n      printf("%s%s",pcVar6,"D_PAGED");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x200) != 0) {\n      printf("%s%s",pcVar6,"BFD_IS_RELAXABLE");\n    }\n    pcVar6 = (char *)dcgettext(0,"\nstart address 0x",5);\n    printf(pcVar6);\n    bfd_fprintf_vma(param_1,*(undefined4 *)PTR_stdout_0006ffdc,param_1[0x1c]);\n    putchar(10);\n  }" { (expression_statement "uVar2 = bfd_get_mach(param_1);" (assignment_expression "uVar2 = bfd_get_mach(param_1)" identifier = (call_expression "bfd_get_mach(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (expression_statement "uVar7 = bfd_get_arch(param_1);" (assignment_expression "uVar7 = bfd_get_arch(param_1)" identifier = (call_expression "bfd_get_arch(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (expression_statement "uVar2 = bfd_printable_arch_mach(uVar7,uVar2);" (assignment_expression "uVar2 = bfd_printable_arch_mach(uVar7,uVar2)" identifier = (call_expression "bfd_printable_arch_mach(uVar7,uVar2)" identifier (argument_list "(uVar7,uVar2)" ( identifier , identifier )))) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"architecture: %s, ",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"architecture: %s, ",5)" identifier = (cast_expression "(char *)dcgettext(0,"architecture: %s, ",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"architecture: %s, ",5)" identifier (argument_list "(0,"architecture: %s, ",5)" ( number_literal , (string_literal ""architecture: %s, "" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar2);" (call_expression "printf(pcVar6,uVar2)" identifier (argument_list "(pcVar6,uVar2)" ( identifier , identifier ))) ;) (expression_statement "uVar9 = param_1[10];" (assignment_expression "uVar9 = param_1[10]" identifier = (subscript_expression "param_1[10]" identifier [ number_literal ])) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"flags 0x%08x:\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"flags 0x%08x:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"flags 0x%08x:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"flags 0x%08x:\n",5)" identifier (argument_list "(0,"flags 0x%08x:\n",5)" ( number_literal , (string_literal ""flags 0x%08x:\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar9 >> 5 & 0x3ff);" (call_expression "printf(pcVar6,uVar9 >> 5 & 0x3ff)" identifier (argument_list "(pcVar6,uVar9 >> 5 & 0x3ff)" ( identifier , (binary_expression "uVar9 >> 5 & 0x3ff" (binary_expression "uVar9 >> 5" identifier >> number_literal) & number_literal) ))) ;) (expression_statement "pcVar6 = "";" (assignment_expression "pcVar6 = """ identifier = (string_literal """" " ")) ;) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" identifier = (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[10]" identifier [ number_literal ])) >> number_literal)) ;) (if_statement "if ((uVar9 & 1) != 0) {\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" if (parenthesized_expression "((uVar9 & 1) != 0)" ( (binary_expression "(uVar9 & 1) != 0" (parenthesized_expression "(uVar9 & 1)" ( (binary_expression "uVar9 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" { (expression_statement "printf("%s%s",&DAT_0004ca07,"HAS_RELOC");" (call_expression "printf("%s%s",&DAT_0004ca07,"HAS_RELOC")" identifier (argument_list "("%s%s",&DAT_0004ca07,"HAS_RELOC")" ( (string_literal ""%s%s"" " string_content ") , (pointer_expression "&DAT_0004ca07" & identifier) , (string_literal ""HAS_RELOC"" " string_content ") ))) ;) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" identifier = (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[10]" identifier [ number_literal ])) >> number_literal)) ;) })) (if_statement "if ((uVar9 & 2) != 0) {\n      printf("%s%s",pcVar6,"EXEC_P");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" if (parenthesized_expression "((uVar9 & 2) != 0)" ( (binary_expression "(uVar9 & 2) != 0" (parenthesized_expression "(uVar9 & 2)" ( (binary_expression "uVar9 & 2" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar6,"EXEC_P");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" { (expression_statement "printf("%s%s",pcVar6,"EXEC_P");" (call_expression "printf("%s%s",pcVar6,"EXEC_P")" identifier (argument_list "("%s%s",pcVar6,"EXEC_P")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""EXEC_P"" " string_content ") ))) ;) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" identifier = (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[10]" identifier [ number_literal ])) >> number_literal)) ;) })) (if_statement "if ((uVar9 & 4) != 0) {\n      printf("%s%s",pcVar6,"HAS_LINENO");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" if (parenthesized_expression "((uVar9 & 4) != 0)" ( (binary_expression "(uVar9 & 4) != 0" (parenthesized_expression "(uVar9 & 4)" ( (binary_expression "uVar9 & 4" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar6,"HAS_LINENO");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" { (expression_statement "printf("%s%s",pcVar6,"HAS_LINENO");" (call_expression "printf("%s%s",pcVar6,"HAS_LINENO")" identifier (argument_list "("%s%s",pcVar6,"HAS_LINENO")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""HAS_LINENO"" " string_content ") ))) ;) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" identifier = (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[10]" identifier [ number_literal ])) >> number_literal)) ;) })) (if_statement "if ((uVar9 & 8) != 0) {\n      printf("%s%s",pcVar6,"HAS_DEBUG");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" if (parenthesized_expression "((uVar9 & 8) != 0)" ( (binary_expression "(uVar9 & 8) != 0" (parenthesized_expression "(uVar9 & 8)" ( (binary_expression "uVar9 & 8" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar6,"HAS_DEBUG");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" { (expression_statement "printf("%s%s",pcVar6,"HAS_DEBUG");" (call_expression "printf("%s%s",pcVar6,"HAS_DEBUG")" identifier (argument_list "("%s%s",pcVar6,"HAS_DEBUG")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""HAS_DEBUG"" " string_content ") ))) ;) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" identifier = (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[10]" identifier [ number_literal ])) >> number_literal)) ;) })) (if_statement "if ((uVar9 & 0x10) != 0) {\n      printf("%s%s",pcVar6,"HAS_SYMS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" if (parenthesized_expression "((uVar9 & 0x10) != 0)" ( (binary_expression "(uVar9 & 0x10) != 0" (parenthesized_expression "(uVar9 & 0x10)" ( (binary_expression "uVar9 & 0x10" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar6,"HAS_SYMS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" { (expression_statement "printf("%s%s",pcVar6,"HAS_SYMS");" (call_expression "printf("%s%s",pcVar6,"HAS_SYMS")" identifier (argument_list "("%s%s",pcVar6,"HAS_SYMS")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""HAS_SYMS"" " string_content ") ))) ;) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" identifier = (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[10]" identifier [ number_literal ])) >> number_literal)) ;) })) (if_statement "if ((uVar9 & 0x20) != 0) {\n      printf("%s%s",pcVar6,"HAS_LOCALS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" if (parenthesized_expression "((uVar9 & 0x20) != 0)" ( (binary_expression "(uVar9 & 0x20) != 0" (parenthesized_expression "(uVar9 & 0x20)" ( (binary_expression "uVar9 & 0x20" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar6,"HAS_LOCALS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" { (expression_statement "printf("%s%s",pcVar6,"HAS_LOCALS");" (call_expression "printf("%s%s",pcVar6,"HAS_LOCALS")" identifier (argument_list "("%s%s",pcVar6,"HAS_LOCALS")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""HAS_LOCALS"" " string_content ") ))) ;) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" identifier = (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[10]" identifier [ number_literal ])) >> number_literal)) ;) })) (if_statement "if ((uVar9 & 0x40) != 0) {\n      printf("%s%s",pcVar6,"DYNAMIC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" if (parenthesized_expression "((uVar9 & 0x40) != 0)" ( (binary_expression "(uVar9 & 0x40) != 0" (parenthesized_expression "(uVar9 & 0x40)" ( (binary_expression "uVar9 & 0x40" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar6,"DYNAMIC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" { (expression_statement "printf("%s%s",pcVar6,"DYNAMIC");" (call_expression "printf("%s%s",pcVar6,"DYNAMIC")" identifier (argument_list "("%s%s",pcVar6,"DYNAMIC")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""DYNAMIC"" " string_content ") ))) ;) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" identifier = (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[10]" identifier [ number_literal ])) >> number_literal)) ;) })) (if_statement "if ((uVar9 & 0x80) != 0) {\n      printf("%s%s",pcVar6,"WP_TEXT");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" if (parenthesized_expression "((uVar9 & 0x80) != 0)" ( (binary_expression "(uVar9 & 0x80) != 0" (parenthesized_expression "(uVar9 & 0x80)" ( (binary_expression "uVar9 & 0x80" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar6,"WP_TEXT");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" { (expression_statement "printf("%s%s",pcVar6,"WP_TEXT");" (call_expression "printf("%s%s",pcVar6,"WP_TEXT")" identifier (argument_list "("%s%s",pcVar6,"WP_TEXT")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""WP_TEXT"" " string_content ") ))) ;) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" identifier = (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[10]" identifier [ number_literal ])) >> number_literal)) ;) })) (if_statement "if ((uVar9 & 0x100) != 0) {\n      printf("%s%s",pcVar6,"D_PAGED");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" if (parenthesized_expression "((uVar9 & 0x100) != 0)" ( (binary_expression "(uVar9 & 0x100) != 0" (parenthesized_expression "(uVar9 & 0x100)" ( (binary_expression "uVar9 & 0x100" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar6,"D_PAGED");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" { (expression_statement "printf("%s%s",pcVar6,"D_PAGED");" (call_expression "printf("%s%s",pcVar6,"D_PAGED")" identifier (argument_list "("%s%s",pcVar6,"D_PAGED")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""D_PAGED"" " string_content ") ))) ;) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" identifier = (string_literal "", "" " string_content ")) ;) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" identifier = (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[10]" identifier [ number_literal ])) >> number_literal)) ;) })) (if_statement "if ((uVar9 & 0x200) != 0) {\n      printf("%s%s",pcVar6,"BFD_IS_RELAXABLE");\n    }" if (parenthesized_expression "((uVar9 & 0x200) != 0)" ( (binary_expression "(uVar9 & 0x200) != 0" (parenthesized_expression "(uVar9 & 0x200)" ( (binary_expression "uVar9 & 0x200" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      printf("%s%s",pcVar6,"BFD_IS_RELAXABLE");\n    }" { (expression_statement "printf("%s%s",pcVar6,"BFD_IS_RELAXABLE");" (call_expression "printf("%s%s",pcVar6,"BFD_IS_RELAXABLE")" identifier (argument_list "("%s%s",pcVar6,"BFD_IS_RELAXABLE")" ( (string_literal ""%s%s"" " string_content ") , identifier , (string_literal ""BFD_IS_RELAXABLE"" " string_content ") ))) ;) })) (expression_statement "pcVar6 = (char *)dcgettext(0,"\nstart address 0x",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"\nstart address 0x",5)" identifier = (cast_expression "(char *)dcgettext(0,"\nstart address 0x",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\nstart address 0x",5)" identifier (argument_list "(0,"\nstart address 0x",5)" ( number_literal , (string_literal ""\nstart address 0x"" " escape_sequence string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier ))) ;) (expression_statement "bfd_fprintf_vma(param_1,*(undefined4 *)PTR_stdout_0006ffdc,param_1[0x1c]);" (call_expression "bfd_fprintf_vma(param_1,*(undefined4 *)PTR_stdout_0006ffdc,param_1[0x1c])" identifier (argument_list "(param_1,*(undefined4 *)PTR_stdout_0006ffdc,param_1[0x1c])" ( identifier , (pointer_expression "*(undefined4 *)PTR_stdout_0006ffdc" * (cast_expression "(undefined4 *)PTR_stdout_0006ffdc" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (subscript_expression "param_1[0x1c]" identifier [ number_literal ]) ))) ;) (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;) })) (if_statement "if (DAT_000710e8 != 0) {\n    (**(code **)(param_1[1] + 0xc4))(param_1,*(undefined4 *)PTR_stdout_0006ffdc);\n  }" if (parenthesized_expression "(DAT_000710e8 != 0)" ( (binary_expression "DAT_000710e8 != 0" identifier != number_literal) )) (compound_statement "{\n    (**(code **)(param_1[1] + 0xc4))(param_1,*(undefined4 *)PTR_stdout_0006ffdc);\n  }" { (expression_statement "(**(code **)(param_1[1] + 0xc4))(param_1,*(undefined4 *)PTR_stdout_0006ffdc);" (call_expression "(**(code **)(param_1[1] + 0xc4))(param_1,*(undefined4 *)PTR_stdout_0006ffdc)" (parenthesized_expression "(**(code **)(param_1[1] + 0xc4))" ( (pointer_expression "**(code **)(param_1[1] + 0xc4)" * (pointer_expression "*(code **)(param_1[1] + 0xc4)" * (cast_expression "(code **)(param_1[1] + 0xc4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1[1] + 0xc4)" ( (binary_expression "param_1[1] + 0xc4" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) ))))) )) (argument_list "(param_1,*(undefined4 *)PTR_stdout_0006ffdc)" ( identifier , (pointer_expression "*(undefined4 *)PTR_stdout_0006ffdc" * (cast_expression "(undefined4 *)PTR_stdout_0006ffdc" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ))) ;) })) (if_statement "if (DAT_000710e4 != 0) {\n    uVar2 = dcgettext(0,"option -P/--private not supported by this file",5);\n    FUN_000451b0(uVar2);\n  }" if (parenthesized_expression "(DAT_000710e4 != 0)" ( (binary_expression "DAT_000710e4 != 0" identifier != number_literal) )) (compound_statement "{\n    uVar2 = dcgettext(0,"option -P/--private not supported by this file",5);\n    FUN_000451b0(uVar2);\n  }" { (expression_statement "uVar2 = dcgettext(0,"option -P/--private not supported by this file",5);" (assignment_expression "uVar2 = dcgettext(0,"option -P/--private not supported by this file",5)" identifier = (call_expression "dcgettext(0,"option -P/--private not supported by this file",5)" identifier (argument_list "(0,"option -P/--private not supported by this file",5)" ( number_literal , (string_literal ""option -P/--private not supported by this file"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_000451b0(uVar2);" (call_expression "FUN_000451b0(uVar2)" identifier (argument_list "(uVar2)" ( identifier ))) ;) })) (if_statement "if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\n    putc(10,*(FILE **)PTR_stdout_0006ffdc);\n  }" if (parenthesized_expression "(DAT_000710a8 == 0 && DAT_000710a4 == 0)" ( (binary_expression "DAT_000710a8 == 0 && DAT_000710a4 == 0" (binary_expression "DAT_000710a8 == 0" identifier == number_literal) && (binary_expression "DAT_000710a4 == 0" identifier == number_literal)) )) (compound_statement "{\n    putc(10,*(FILE **)PTR_stdout_0006ffdc);\n  }" { (expression_statement "putc(10,*(FILE **)PTR_stdout_0006ffdc);" (call_expression "putc(10,*(FILE **)PTR_stdout_0006ffdc)" identifier (argument_list "(10,*(FILE **)PTR_stdout_0006ffdc)" ( number_literal , (pointer_expression "*(FILE **)PTR_stdout_0006ffdc" * (cast_expression "(FILE **)PTR_stdout_0006ffdc" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) })) (expression_statement "pvVar10 = DAT_0007106c;" (assignment_expression "pvVar10 = DAT_0007106c" identifier = identifier) ;) (if_statement "if ((((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0) || DAT_000710ac != 0) ||\n      DAT_000710d0 != 0) {\n    if ((*(byte *)((int)param_1 + 0x29) & 2) == 0) {\n      DAT_00071068 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);\n      if (iVar3 < 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    \n        FUN_000450f0(uVar2);\n      }\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);\n      if (DAT_00071068 < 0) goto LAB_00017bfe;\n    }\n  }" if (parenthesized_expression "((((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0) || DAT_000710ac != 0) ||\n      DAT_000710d0 != 0)" ( (binary_expression "(((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0) || DAT_000710ac != 0) ||\n      DAT_000710d0 != 0" (parenthesized_expression "(((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0) || DAT_000710ac != 0)" ( (binary_expression "((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0) || DAT_000710ac != 0" (parenthesized_expression "((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0)" ( (binary_expression "(DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0" (parenthesized_expression "(DAT_000710fc != 0 || DAT_000710f4 != 0)" ( (binary_expression "DAT_000710fc != 0 || DAT_000710f4 != 0" (binary_expression "DAT_000710fc != 0" identifier != number_literal) || (binary_expression "DAT_000710f4 != 0" identifier != number_literal)) )) || (binary_expression "DAT_000710c4 != 0" identifier != number_literal)) )) || (binary_expression "DAT_000710ac != 0" identifier != number_literal)) )) || (binary_expression "DAT_000710d0 != 0" identifier != number_literal)) )) (compound_statement "{\n    if ((*(byte *)((int)param_1 + 0x29) & 2) == 0) {\n      DAT_00071068 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);\n      if (iVar3 < 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    \n        FUN_000450f0(uVar2);\n      }\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);\n      if (DAT_00071068 < 0) goto LAB_00017bfe;\n    }\n  }" { (if_statement "if ((*(byte *)((int)param_1 + 0x29) & 2) == 0) {\n      DAT_00071068 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);\n      if (iVar3 < 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    \n        FUN_000450f0(uVar2);\n      }\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);\n      if (DAT_00071068 < 0) goto LAB_00017bfe;\n    }" if (parenthesized_expression "((*(byte *)((int)param_1 + 0x29) & 2) == 0)" ( (binary_expression "(*(byte *)((int)param_1 + 0x29) & 2) == 0" (parenthesized_expression "(*(byte *)((int)param_1 + 0x29) & 2)" ( (binary_expression "*(byte *)((int)param_1 + 0x29) & 2" (pointer_expression "*(byte *)((int)param_1 + 0x29)" * (cast_expression "(byte *)((int)param_1 + 0x29)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)param_1 + 0x29)" ( (binary_expression "(int)param_1 + 0x29" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n      DAT_00071068 = 0;\n      pvVar10 = (void *)0x0;\n    }" { (expression_statement "DAT_00071068 = 0;" (assignment_expression "DAT_00071068 = 0" identifier = number_literal) ;) (expression_statement "pvVar10 = (void *)0x0;" (assignment_expression "pvVar10 = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n      iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);\n      if (iVar3 < 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    \n        FUN_000450f0(uVar2);\n      }\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);\n      if (DAT_00071068 < 0) goto LAB_00017bfe;\n    }" else (compound_statement "{\n      iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);\n      if (iVar3 < 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    \n        FUN_000450f0(uVar2);\n      }\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);\n      if (DAT_00071068 < 0) goto LAB_00017bfe;\n    }" { (expression_statement "iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);" (assignment_expression "iVar3 = (**(code **)(param_1[1] + 0x104))(param_1)" identifier = (call_expression "(**(code **)(param_1[1] + 0x104))(param_1)" (parenthesized_expression "(**(code **)(param_1[1] + 0x104))" ( (pointer_expression "**(code **)(param_1[1] + 0x104)" * (pointer_expression "*(code **)(param_1[1] + 0x104)" * (cast_expression "(code **)(param_1[1] + 0x104)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1[1] + 0x104)" ( (binary_expression "param_1[1] + 0x104" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) ))))) )) (argument_list "(param_1)" ( identifier )))) ;) (if_statement "if (iVar3 < 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    \n        FUN_000450f0(uVar2);\n      }" if (parenthesized_expression "(iVar3 < 0)" ( (binary_expression "iVar3 < 0" identifier < number_literal) )) (compound_statement "{\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    \n        FUN_000450f0(uVar2);\n      }" { (expression_statement "uVar2 = *param_1;" (assignment_expression "uVar2 = *param_1" identifier = (pointer_expression "*param_1" * identifier)) ;) (expression_statement "uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);" (assignment_expression "uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3)" identifier = (call_expression "dcgettext(0,"failed to read symbol table from: %s",5,iVar3)" identifier (argument_list "(0,"failed to read symbol table from: %s",5,iVar3)" ( number_literal , (string_literal ""failed to read symbol table from: %s"" " string_content ") , number_literal , identifier )))) ;) (expression_statement "FUN_000451b0(uVar7,uVar2);" (call_expression "FUN_000451b0(uVar7,uVar2)" identifier (argument_list "(uVar7,uVar2)" ( identifier , identifier ))) ;) (expression_statement "uVar2 = dcgettext(0,"error message was",5);" (assignment_expression "uVar2 = dcgettext(0,"error message was",5)" identifier = (call_expression "dcgettext(0,"error message was",5)" identifier (argument_list "(0,"error message was",5)" ( number_literal , (string_literal ""error message was"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_000450f0(uVar2);" (call_expression "FUN_000450f0(uVar2)" identifier (argument_list "(uVar2)" ( identifier ))) ;) })) (expression_statement "pvVar10 = (void *)0x0;" (assignment_expression "pvVar10 = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n        pvVar10 = (void *)xmalloc(iVar3);\n      }" { (expression_statement "pvVar10 = (void *)xmalloc(iVar3);" (assignment_expression "pvVar10 = (void *)xmalloc(iVar3)" identifier = (cast_expression "(void *)xmalloc(iVar3)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(iVar3)" identifier (argument_list "(iVar3)" ( identifier ))))) ;) })) (expression_statement "DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);" (assignment_expression "DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10)" identifier = (call_expression "(**(code **)(param_1[1] + 0x108))(param_1,pvVar10)" (parenthesized_expression "(**(code **)(param_1[1] + 0x108))" ( (pointer_expression "**(code **)(param_1[1] + 0x108)" * (pointer_expression "*(code **)(param_1[1] + 0x108)" * (cast_expression "(code **)(param_1[1] + 0x108)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1[1] + 0x108)" ( (binary_expression "param_1[1] + 0x108" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) ))))) )) (argument_list "(param_1,pvVar10)" ( identifier , identifier )))) ;) (if_statement "if (DAT_00071068 < 0) goto LAB_00017bfe;" if (parenthesized_expression "(DAT_00071068 < 0)" ( (binary_expression "DAT_00071068 < 0" identifier < number_literal) )) (goto_statement "goto LAB_00017bfe;" goto statement_identifier ;)) }))) })) (expression_statement "DAT_0007106c = pvVar10;" (assignment_expression "DAT_0007106c = pvVar10" identifier = identifier) ;) (if_statement "if (DAT_00071104 != 0) {\n    local_b4[0] = 0xd;\n    pcVar6 = (char *)dcgettext(0,"Sections:\n",5);\n    printf(pcVar6);\n    if (DAT_000710b4 != 0) {\n      bfd_map_over_sections(param_1,FUN_00016d60,local_b4);\n    }\n    uVar9 = local_b4[0];\n    pcVar6 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);\n    printf(pcVar6,uVar9,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);\n    if (DAT_000710b4 != 0) {\n      pcVar6 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar6);\n    }\n    putchar(10);\n    bfd_map_over_sections(param_1,FUN_00016160,local_b4);\n  }" if (parenthesized_expression "(DAT_00071104 != 0)" ( (binary_expression "DAT_00071104 != 0" identifier != number_literal) )) (compound_statement "{\n    local_b4[0] = 0xd;\n    pcVar6 = (char *)dcgettext(0,"Sections:\n",5);\n    printf(pcVar6);\n    if (DAT_000710b4 != 0) {\n      bfd_map_over_sections(param_1,FUN_00016d60,local_b4);\n    }\n    uVar9 = local_b4[0];\n    pcVar6 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);\n    printf(pcVar6,uVar9,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);\n    if (DAT_000710b4 != 0) {\n      pcVar6 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar6);\n    }\n    putchar(10);\n    bfd_map_over_sections(param_1,FUN_00016160,local_b4);\n  }" { (expression_statement "local_b4[0] = 0xd;" (assignment_expression "local_b4[0] = 0xd" (subscript_expression "local_b4[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"Sections:\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"Sections:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Sections:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Sections:\n",5)" identifier (argument_list "(0,"Sections:\n",5)" ( number_literal , (string_literal ""Sections:\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier ))) ;) (if_statement "if (DAT_000710b4 != 0) {\n      bfd_map_over_sections(param_1,FUN_00016d60,local_b4);\n    }" if (parenthesized_expression "(DAT_000710b4 != 0)" ( (binary_expression "DAT_000710b4 != 0" identifier != number_literal) )) (compound_statement "{\n      bfd_map_over_sections(param_1,FUN_00016d60,local_b4);\n    }" { (expression_statement "bfd_map_over_sections(param_1,FUN_00016d60,local_b4);" (call_expression "bfd_map_over_sections(param_1,FUN_00016d60,local_b4)" identifier (argument_list "(param_1,FUN_00016d60,local_b4)" ( identifier , identifier , identifier ))) ;) })) (expression_statement "uVar9 = local_b4[0];" (assignment_expression "uVar9 = local_b4[0]" identifier = (subscript_expression "local_b4[0]" identifier [ number_literal ])) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5)" identifier = (cast_expression "(char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5)" identifier (argument_list "(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5)" ( number_literal , (string_literal ""Idx %-*s Size      %-*s%-*sFile off  Algn"" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar9,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);" (call_expression "printf(pcVar6,uVar9,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8)" identifier (argument_list "(pcVar6,uVar9,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8)" ( identifier , identifier , (string_literal ""Name"" " string_content ") , number_literal , (pointer_expression "&DAT_0004c7fc" & identifier) , number_literal , (pointer_expression "&DAT_0004c7f8" & identifier) ))) ;) (if_statement "if (DAT_000710b4 != 0) {\n      pcVar6 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar6);\n    }" if (parenthesized_expression "(DAT_000710b4 != 0)" ( (binary_expression "DAT_000710b4 != 0" identifier != number_literal) )) (compound_statement "{\n      pcVar6 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar6);\n    }" { (expression_statement "pcVar6 = (char *)dcgettext(0,"  Flags",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Flags",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Flags",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Flags",5)" identifier (argument_list "(0,"  Flags",5)" ( number_literal , (string_literal ""  Flags"" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier ))) ;) })) (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;) (expression_statement "bfd_map_over_sections(param_1,FUN_00016160,local_b4);" (call_expression "bfd_map_over_sections(param_1,FUN_00016160,local_b4)" identifier (argument_list "(param_1,FUN_00016160,local_b4)" ( identifier , identifier , identifier ))) ;) })) (if_statement "if (DAT_000710f8 == 0 && DAT_000710f0 == 0) {\n    if (DAT_000710c4 != 0) {\n      iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n      pvVar10 = DAT_0007105c;\n      if (0 < iVar3) goto LAB_000170fd;\n      goto LAB_00017145;\n    }\n  }\n  else {\nLAB_000170fd:\n    iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n    if (iVar3 < 0) {\n      uVar2 = *param_1;\n      if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {\n                    \n        FUN_000450f0(uVar2);\n      }\n      uVar7 = dcgettext(0,"%s: not a dynamic object",5);\n      FUN_000451b0(uVar7,uVar2);\n      DAT_00071110 = 1;\n      DAT_00071050 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);\n      if (DAT_00071050 < 0) goto LAB_00017bfe;\n    }\nLAB_00017145:\n    DAT_0007105c = pvVar10;\n    if ((DAT_000710c4 != 0) &&\n       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0)) {\n      DAT_00071054 = 0;\n    }\n  }" if (parenthesized_expression "(DAT_000710f8 == 0 && DAT_000710f0 == 0)" ( (binary_expression "DAT_000710f8 == 0 && DAT_000710f0 == 0" (binary_expression "DAT_000710f8 == 0" identifier == number_literal) && (binary_expression "DAT_000710f0 == 0" identifier == number_literal)) )) (compound_statement "{\n    if (DAT_000710c4 != 0) {\n      iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n      pvVar10 = DAT_0007105c;\n      if (0 < iVar3) goto LAB_000170fd;\n      goto LAB_00017145;\n    }\n  }" { (if_statement "if (DAT_000710c4 != 0) {\n      iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n      pvVar10 = DAT_0007105c;\n      if (0 < iVar3) goto LAB_000170fd;\n      goto LAB_00017145;\n    }" if (parenthesized_expression "(DAT_000710c4 != 0)" ( (binary_expression "DAT_000710c4 != 0" identifier != number_literal) )) (compound_statement "{\n      iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n      pvVar10 = DAT_0007105c;\n      if (0 < iVar3) goto LAB_000170fd;\n      goto LAB_00017145;\n    }" { (expression_statement "iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);" (assignment_expression "iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1)" identifier = (call_expression "(**(code **)(param_1[1] + 0x1a8))(param_1)" (parenthesized_expression "(**(code **)(param_1[1] + 0x1a8))" ( (pointer_expression "**(code **)(param_1[1] + 0x1a8)" * (pointer_expression "*(code **)(param_1[1] + 0x1a8)" * (cast_expression "(code **)(param_1[1] + 0x1a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1[1] + 0x1a8)" ( (binary_expression "param_1[1] + 0x1a8" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) ))))) )) (argument_list "(param_1)" ( identifier )))) ;) (expression_statement "pvVar10 = DAT_0007105c;" (assignment_expression "pvVar10 = DAT_0007105c" identifier = identifier) ;) (if_statement "if (0 < iVar3) goto LAB_000170fd;" if (parenthesized_expression "(0 < iVar3)" ( (binary_expression "0 < iVar3" number_literal < identifier) )) (goto_statement "goto LAB_000170fd;" goto statement_identifier ;)) (goto_statement "goto LAB_00017145;" goto statement_identifier ;) })) }) (else_clause "else {\nLAB_000170fd:\n    iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n    if (iVar3 < 0) {\n      uVar2 = *param_1;\n      if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {\n                    \n        FUN_000450f0(uVar2);\n      }\n      uVar7 = dcgettext(0,"%s: not a dynamic object",5);\n      FUN_000451b0(uVar7,uVar2);\n      DAT_00071110 = 1;\n      DAT_00071050 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);\n      if (DAT_00071050 < 0) goto LAB_00017bfe;\n    }\nLAB_00017145:\n    DAT_0007105c = pvVar10;\n    if ((DAT_000710c4 != 0) &&\n       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0)) {\n      DAT_00071054 = 0;\n    }\n  }" else (compound_statement "{\nLAB_000170fd:\n    iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n    if (iVar3 < 0) {\n      uVar2 = *param_1;\n      if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {\n                    \n        FUN_000450f0(uVar2);\n      }\n      uVar7 = dcgettext(0,"%s: not a dynamic object",5);\n      FUN_000451b0(uVar7,uVar2);\n      DAT_00071110 = 1;\n      DAT_00071050 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);\n      if (DAT_00071050 < 0) goto LAB_00017bfe;\n    }\nLAB_00017145:\n    DAT_0007105c = pvVar10;\n    if ((DAT_000710c4 != 0) &&\n       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0)) {\n      DAT_00071054 = 0;\n    }\n  }" { (labeled_statement "LAB_000170fd:\n    iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);" statement_identifier : (expression_statement "iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);" (assignment_expression "iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1)" identifier = (call_expression "(**(code **)(param_1[1] + 0x1a8))(param_1)" (parenthesized_expression "(**(code **)(param_1[1] + 0x1a8))" ( (pointer_expression "**(code **)(param_1[1] + 0x1a8)" * (pointer_expression "*(code **)(param_1[1] + 0x1a8)" * (cast_expression "(code **)(param_1[1] + 0x1a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1[1] + 0x1a8)" ( (binary_expression "param_1[1] + 0x1a8" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) ))))) )) (argument_list "(param_1)" ( identifier )))) ;)) (if_statement "if (iVar3 < 0) {\n      uVar2 = *param_1;\n      if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {\n                    \n        FUN_000450f0(uVar2);\n      }\n      uVar7 = dcgettext(0,"%s: not a dynamic object",5);\n      FUN_000451b0(uVar7,uVar2);\n      DAT_00071110 = 1;\n      DAT_00071050 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);\n      if (DAT_00071050 < 0) goto LAB_00017bfe;\n    }" if (parenthesized_expression "(iVar3 < 0)" ( (binary_expression "iVar3 < 0" identifier < number_literal) )) (compound_statement "{\n      uVar2 = *param_1;\n      if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {\n                    \n        FUN_000450f0(uVar2);\n      }\n      uVar7 = dcgettext(0,"%s: not a dynamic object",5);\n      FUN_000451b0(uVar7,uVar2);\n      DAT_00071110 = 1;\n      DAT_00071050 = 0;\n      pvVar10 = (void *)0x0;\n    }" { (expression_statement "uVar2 = *param_1;" (assignment_expression "uVar2 = *param_1" identifier = (pointer_expression "*param_1" * identifier)) ;) (if_statement "if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {\n                    \n        FUN_000450f0(uVar2);\n      }" if (parenthesized_expression "((*(byte *)((int)param_1 + 0x29) & 8) != 0)" ( (binary_expression "(*(byte *)((int)param_1 + 0x29) & 8) != 0" (parenthesized_expression "(*(byte *)((int)param_1 + 0x29) & 8)" ( (binary_expression "*(byte *)((int)param_1 + 0x29) & 8" (pointer_expression "*(byte *)((int)param_1 + 0x29)" * (cast_expression "(byte *)((int)param_1 + 0x29)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)param_1 + 0x29)" ( (binary_expression "(int)param_1 + 0x29" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) & number_literal) )) != number_literal) )) (compound_statement "{\n                    \n        FUN_000450f0(uVar2);\n      }" { (expression_statement "FUN_000450f0(uVar2);" (call_expression "FUN_000450f0(uVar2)" identifier (argument_list "(uVar2)" ( identifier ))) ;) })) (expression_statement "uVar7 = dcgettext(0,"%s: not a dynamic object",5);" (assignment_expression "uVar7 = dcgettext(0,"%s: not a dynamic object",5)" identifier = (call_expression "dcgettext(0,"%s: not a dynamic object",5)" identifier (argument_list "(0,"%s: not a dynamic object",5)" ( number_literal , (string_literal ""%s: not a dynamic object"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_000451b0(uVar7,uVar2);" (call_expression "FUN_000451b0(uVar7,uVar2)" identifier (argument_list "(uVar7,uVar2)" ( identifier , identifier ))) ;) (expression_statement "DAT_00071110 = 1;" (assignment_expression "DAT_00071110 = 1" identifier = number_literal) ;) (expression_statement "DAT_00071050 = 0;" (assignment_expression "DAT_00071050 = 0" identifier = number_literal) ;) (expression_statement "pvVar10 = (void *)0x0;" (assignment_expression "pvVar10 = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);\n      if (DAT_00071050 < 0) goto LAB_00017bfe;\n    }" else (compound_statement "{\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);\n      if (DAT_00071050 < 0) goto LAB_00017bfe;\n    }" { (expression_statement "pvVar10 = (void *)0x0;" (assignment_expression "pvVar10 = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n        pvVar10 = (void *)xmalloc(iVar3);\n      }" { (expression_statement "pvVar10 = (void *)xmalloc(iVar3);" (assignment_expression "pvVar10 = (void *)xmalloc(iVar3)" identifier = (cast_expression "(void *)xmalloc(iVar3)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(iVar3)" identifier (argument_list "(iVar3)" ( identifier ))))) ;) })) (expression_statement "DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);" (assignment_expression "DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10)" identifier = (call_expression "(**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10)" (parenthesized_expression "(**(code **)(param_1[1] + 0x1ac))" ( (pointer_expression "**(code **)(param_1[1] + 0x1ac)" * (pointer_expression "*(code **)(param_1[1] + 0x1ac)" * (cast_expression "(code **)(param_1[1] + 0x1ac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1[1] + 0x1ac)" ( (binary_expression "param_1[1] + 0x1ac" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) ))))) )) (argument_list "(param_1,pvVar10)" ( identifier , identifier )))) ;) (if_statement "if (DAT_00071050 < 0) goto LAB_00017bfe;" if (parenthesized_expression "(DAT_00071050 < 0)" ( (binary_expression "DAT_00071050 < 0" identifier < number_literal) )) (goto_statement "goto LAB_00017bfe;" goto statement_identifier ;)) }))) (labeled_statement "LAB_00017145:\n    DAT_0007105c = pvVar10;" statement_identifier : (expression_statement "DAT_0007105c = pvVar10;" (assignment_expression "DAT_0007105c = pvVar10" identifier = identifier) ;)) (if_statement "if ((DAT_000710c4 != 0) &&\n       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0)) {\n      DAT_00071054 = 0;\n    }" if (parenthesized_expression "((DAT_000710c4 != 0) &&\n       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0))" ( (binary_expression "(DAT_000710c4 != 0) &&\n       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0)" (parenthesized_expression "(DAT_000710c4 != 0)" ( (binary_expression "DAT_000710c4 != 0" identifier != number_literal) )) && (parenthesized_expression "(DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0)" ( (comma_expression "DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0" (assignment_expression "DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058)" identifier = (call_expression "(**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058)" (parenthesized_expression "(**(code **)(param_1[1] + 0x1b0))" ( (pointer_expression "**(code **)(param_1[1] + 0x1b0)" * (pointer_expression "*(code **)(param_1[1] + 0x1b0)" * (cast_expression "(code **)(param_1[1] + 0x1b0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1[1] + 0x1b0)" ( (binary_expression "param_1[1] + 0x1b0" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) ))))) )) (argument_list "(param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058)" ( identifier , identifier , identifier , identifier , identifier , (pointer_expression "&DAT_00071058" & identifier) )))) , (binary_expression "DAT_00071054 < 0" identifier < number_literal)) ))) )) (compound_statement "{\n      DAT_00071054 = 0;\n    }" { (expression_statement "DAT_00071054 = 0;" (assignment_expression "DAT_00071054 = 0" identifier = number_literal) ;) })) }))) (if_statement "if (DAT_000710fc != 0) {\n    FUN_00016db0();\n  }" if (parenthesized_expression "(DAT_000710fc != 0)" ( (binary_expression "DAT_000710fc != 0" identifier != number_literal) )) (compound_statement "{\n    FUN_00016db0();\n  }" { (expression_statement "FUN_00016db0();" (call_expression "FUN_00016db0()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (DAT_000710f8 != 0) {\n    FUN_00016db0();\n  }" if (parenthesized_expression "(DAT_000710f8 != 0)" ( (binary_expression "DAT_000710f8 != 0" identifier != number_literal) )) (compound_statement "{\n    FUN_00016db0();\n  }" { (expression_statement "FUN_00016db0();" (call_expression "FUN_00016db0()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (DAT_000710d0 != 0) {\n    FUN_00015f30();\n  }" if (parenthesized_expression "(DAT_000710d0 != 0)" ( (binary_expression "DAT_000710d0 != 0" identifier != number_literal) )) (compound_statement "{\n    FUN_00015f30();\n  }" { (expression_statement "FUN_00015f30();" (call_expression "FUN_00015f30()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (DAT_000710cc != 0) {\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n  }" if (parenthesized_expression "(DAT_000710cc != 0)" ( (binary_expression "DAT_000710cc != 0" identifier != number_literal) )) (compound_statement "{\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n  }" { (expression_statement "FUN_00014db0();" (call_expression "FUN_00014db0()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_00014db0();" (call_expression "FUN_00014db0()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_00014db0();" (call_expression "FUN_00014db0()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_00014db0();" (call_expression "FUN_00014db0()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_00014db0();" (call_expression "FUN_00014db0()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (DAT_000710f4 == 0) {\nLAB_00017355:\n    if (DAT_000710f0 != 0) {\n      if (DAT_000710c4 != 0) goto LAB_00017371;\n      iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n      if (iVar3 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (iVar3 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }\n    }\nLAB_000171f0:\n    if (DAT_00071108 != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(param_1,FUN_00016840,0);\n    }\n    if (DAT_000710c4 == 0) goto joined_r0x0001721a;\n  }\n  else {\n    if (DAT_000710c4 == 0) {\n      bfd_map_over_sections(param_1,FUN_00018570,0);\n      goto LAB_00017355;\n    }\n    if (DAT_000710f0 == 0) goto LAB_000171f0;\nLAB_00017371:\n    if (DAT_00071108 != 0) goto LAB_00017ac0;\n  }" if (parenthesized_expression "(DAT_000710f4 == 0)" ( (binary_expression "DAT_000710f4 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_00017355:\n    if (DAT_000710f0 != 0) {\n      if (DAT_000710c4 != 0) goto LAB_00017371;\n      iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n      if (iVar3 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (iVar3 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }\n    }\nLAB_000171f0:\n    if (DAT_00071108 != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(param_1,FUN_00016840,0);\n    }\n    if (DAT_000710c4 == 0) goto joined_r0x0001721a;\n  }" { (labeled_statement "LAB_00017355:\n    if (DAT_000710f0 != 0) {\n      if (DAT_000710c4 != 0) goto LAB_00017371;\n      iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n      if (iVar3 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (iVar3 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }\n    }" statement_identifier : (if_statement "if (DAT_000710f0 != 0) {\n      if (DAT_000710c4 != 0) goto LAB_00017371;\n      iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n      if (iVar3 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (iVar3 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }\n    }" if (parenthesized_expression "(DAT_000710f0 != 0)" ( (binary_expression "DAT_000710f0 != 0" identifier != number_literal) )) (compound_statement "{\n      if (DAT_000710c4 != 0) goto LAB_00017371;\n      iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n      if (iVar3 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (iVar3 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }\n    }" { (if_statement "if (DAT_000710c4 != 0) goto LAB_00017371;" if (parenthesized_expression "(DAT_000710c4 != 0)" ( (binary_expression "DAT_000710c4 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00017371;" goto statement_identifier ;)) (expression_statement "iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);" (assignment_expression "iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1)" identifier = (call_expression "(**(code **)(param_1[1] + 0x1b4))(param_1)" (parenthesized_expression "(**(code **)(param_1[1] + 0x1b4))" ( (pointer_expression "**(code **)(param_1[1] + 0x1b4)" * (pointer_expression "*(code **)(param_1[1] + 0x1b4)" * (cast_expression "(code **)(param_1[1] + 0x1b4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1[1] + 0x1b4)" ( (binary_expression "param_1[1] + 0x1b4" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) ))))) )) (argument_list "(param_1)" ( identifier )))) ;) (if_statement "if (iVar3 < 0) goto LAB_00017bfe;" if (parenthesized_expression "(iVar3 < 0)" ( (binary_expression "iVar3 < 0" identifier < number_literal) )) (goto_statement "goto LAB_00017bfe;" goto statement_identifier ;)) (expression_statement "printf("DYNAMIC RELOCATION RECORDS");" (call_expression "printf("DYNAMIC RELOCATION RECORDS")" identifier (argument_list "("DYNAMIC RELOCATION RECORDS")" ( (string_literal ""DYNAMIC RELOCATION RECORDS"" " string_content ") ))) ;) (if_statement "if (iVar3 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n        puts(" (none)\n");\n      }" { (expression_statement "puts(" (none)\n");" (call_expression "puts(" (none)\n")" identifier (argument_list "(" (none)\n")" ( (string_literal "" (none)\n"" " string_content escape_sequence ") ))) ;) }) (else_clause "else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }" else (compound_statement "{\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }" { (expression_statement "pvVar10 = (void *)xmalloc(iVar3);" (assignment_expression "pvVar10 = (void *)xmalloc(iVar3)" identifier = (cast_expression "(void *)xmalloc(iVar3)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(iVar3)" identifier (argument_list "(iVar3)" ( identifier ))))) ;) (expression_statement "iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);" (assignment_expression "iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c)" identifier = (call_expression "(**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c)" (parenthesized_expression "(**(code **)(param_1[1] + 0x1b8))" ( (pointer_expression "**(code **)(param_1[1] + 0x1b8)" * (pointer_expression "*(code **)(param_1[1] + 0x1b8)" * (cast_expression "(code **)(param_1[1] + 0x1b8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1[1] + 0x1b8)" ( (binary_expression "param_1[1] + 0x1b8" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) ))))) )) (argument_list "(param_1,pvVar10,DAT_0007105c)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar3 < 0) goto LAB_00017bfe;" if (parenthesized_expression "(iVar3 < 0)" ( (binary_expression "iVar3 < 0" identifier < number_literal) )) (goto_statement "goto LAB_00017bfe;" goto statement_identifier ;)) (if_statement "if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n          puts(" (none)\n");\n        }" { (expression_statement "puts(" (none)\n");" (call_expression "puts(" (none)\n")" identifier (argument_list "(" (none)\n")" ( (string_literal "" (none)\n"" " string_content escape_sequence ") ))) ;) }) (else_clause "else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }" else (compound_statement "{\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }" { (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;) (expression_statement "FUN_000153f0(iVar3);" (call_expression "FUN_000153f0(iVar3)" identifier (argument_list "(iVar3)" ( identifier ))) ;) (expression_statement "puts("\n");" (call_expression "puts("\n")" identifier (argument_list "("\n")" ( (string_literal ""\n"" " escape_sequence ") ))) ;) }))) (expression_statement "free(pvVar10);" (call_expression "free(pvVar10)" identifier (argument_list "(pvVar10)" ( identifier ))) ;) }))) }))) (labeled_statement "LAB_000171f0:\n    if (DAT_00071108 != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(param_1,FUN_00016840,0);\n    }" statement_identifier : (if_statement "if (DAT_00071108 != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(param_1,FUN_00016840,0);\n    }" if (parenthesized_expression "(DAT_00071108 != 0)" ( (binary_expression "DAT_00071108 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_00017ac0:\n      bfd_map_over_sections(param_1,FUN_00016840,0);\n    }" { (labeled_statement "LAB_00017ac0:\n      bfd_map_over_sections(param_1,FUN_00016840,0);" statement_identifier : (expression_statement "bfd_map_over_sections(param_1,FUN_00016840,0);" (call_expression "bfd_map_over_sections(param_1,FUN_00016840,0)" identifier (argument_list "(param_1,FUN_00016840,0)" ( identifier , identifier , number_literal ))) ;)) }))) (if_statement "if (DAT_000710c4 == 0) goto joined_r0x0001721a;" if (parenthesized_expression "(DAT_000710c4 == 0)" ( (binary_expression "DAT_000710c4 == 0" identifier == number_literal) )) (goto_statement "goto joined_r0x0001721a;" goto statement_identifier ;)) }) (else_clause "else {\n    if (DAT_000710c4 == 0) {\n      bfd_map_over_sections(param_1,FUN_00018570,0);\n      goto LAB_00017355;\n    }\n    if (DAT_000710f0 == 0) goto LAB_000171f0;\nLAB_00017371:\n    if (DAT_00071108 != 0) goto LAB_00017ac0;\n  }" else (compound_statement "{\n    if (DAT_000710c4 == 0) {\n      bfd_map_over_sections(param_1,FUN_00018570,0);\n      goto LAB_00017355;\n    }\n    if (DAT_000710f0 == 0) goto LAB_000171f0;\nLAB_00017371:\n    if (DAT_00071108 != 0) goto LAB_00017ac0;\n  }" { (if_statement "if (DAT_000710c4 == 0) {\n      bfd_map_over_sections(param_1,FUN_00018570,0);\n      goto LAB_00017355;\n    }" if (parenthesized_expression "(DAT_000710c4 == 0)" ( (binary_expression "DAT_000710c4 == 0" identifier == number_literal) )) (compound_statement "{\n      bfd_map_over_sections(param_1,FUN_00018570,0);\n      goto LAB_00017355;\n    }" { (expression_statement "bfd_map_over_sections(param_1,FUN_00018570,0);" (call_expression "bfd_map_over_sections(param_1,FUN_00018570,0)" identifier (argument_list "(param_1,FUN_00018570,0)" ( identifier , identifier , number_literal ))) ;) (goto_statement "goto LAB_00017355;" goto statement_identifier ;) })) (if_statement "if (DAT_000710f0 == 0) goto LAB_000171f0;" if (parenthesized_expression "(DAT_000710f0 == 0)" ( (binary_expression "DAT_000710f0 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000171f0;" goto statement_identifier ;)) (labeled_statement "LAB_00017371:\n    if (DAT_00071108 != 0) goto LAB_00017ac0;" statement_identifier : (if_statement "if (DAT_00071108 != 0) goto LAB_00017ac0;" if (parenthesized_expression "(DAT_00071108 != 0)" ( (binary_expression "DAT_00071108 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00017ac0;" goto statement_identifier ;))) }))) (expression_statement "DAT_0007102c = 0;" (assignment_expression "DAT_0007102c = 0" identifier = number_literal) ;) (expression_statement "DAT_00071038 = 0;" (assignment_expression "DAT_00071038 = 0" identifier = number_literal) ;) (expression_statement "DAT_00071034 = 0xffffffff;" (assignment_expression "DAT_00071034 = 0xffffffff" identifier = number_literal) ;) (expression_statement "DAT_00071060 = DAT_00071068;" (assignment_expression "DAT_00071060 = DAT_00071068" identifier = identifier) ;) (if_statement "if (DAT_00071068 == 0) {\n    DAT_00071060 = DAT_00071050;\n  }" if (parenthesized_expression "(DAT_00071068 == 0)" ( (binary_expression "DAT_00071068 == 0" identifier == number_literal) )) (compound_statement "{\n    DAT_00071060 = DAT_00071050;\n  }" { (expression_statement "DAT_00071060 = DAT_00071050;" (assignment_expression "DAT_00071060 = DAT_00071050" identifier = identifier) ;) })) (expression_statement "DAT_00071030 = 0;" (assignment_expression "DAT_00071030 = 0" identifier = number_literal) ;) (expression_statement "__dest = (int *)xmalloc((DAT_00071060 + DAT_00071054) * 4);" (assignment_expression "__dest = (int *)xmalloc((DAT_00071060 + DAT_00071054) * 4)" identifier = (cast_expression "(int *)xmalloc((DAT_00071060 + DAT_00071054) * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc((DAT_00071060 + DAT_00071054) * 4)" identifier (argument_list "((DAT_00071060 + DAT_00071054) * 4)" ( (binary_expression "(DAT_00071060 + DAT_00071054) * 4" (parenthesized_expression "(DAT_00071060 + DAT_00071054)" ( (binary_expression "DAT_00071060 + DAT_00071054" identifier + identifier) )) * number_literal) ))))) ;) (expression_statement "local_e8 = DAT_00071060;" (assignment_expression "local_e8 = DAT_00071060" identifier = identifier) ;) (expression_statement "pvVar10 = DAT_0007106c;" (assignment_expression "pvVar10 = DAT_0007106c" identifier = identifier) ;) (if_statement "if (DAT_00071068 == 0) {\n    pvVar10 = DAT_0007105c;\n  }" if (parenthesized_expression "(DAT_00071068 == 0)" ( (binary_expression "DAT_00071068 == 0" identifier == number_literal) )) (compound_statement "{\n    pvVar10 = DAT_0007105c;\n  }" { (expression_statement "pvVar10 = DAT_0007105c;" (assignment_expression "pvVar10 = DAT_0007105c" identifier = identifier) ;) })) (expression_statement "DAT_00071064 = __dest;" (assignment_expression "DAT_00071064 = __dest" identifier = identifier) ;) (expression_statement "memcpy(__dest,pvVar10,DAT_00071060 << 2);" (call_expression "memcpy(__dest,pvVar10,DAT_00071060 << 2)" identifier (argument_list "(__dest,pvVar10,DAT_00071060 << 2)" ( identifier , identifier , (binary_expression "DAT_00071060 << 2" identifier << number_literal) ))) ;) (expression_statement "puVar4 = PTR__bfd_std_section_0006ffd8 + 0xa8;" (assignment_expression "puVar4 = PTR__bfd_std_section_0006ffd8 + 0xa8" identifier = (binary_expression "PTR__bfd_std_section_0006ffd8 + 0xa8" identifier + number_literal)) ;) (expression_statement "local_f0 = __dest;" (assignment_expression "local_f0 = __dest" identifier = identifier) ;) (expression_statement "local_ec = __dest;" (assignment_expression "local_ec = __dest" identifier = identifier) ;) (labeled_statement "LAB_00017428:\n  local_e8 = local_e8 + -1;" statement_identifier : (expression_statement "local_e8 = local_e8 + -1;" (assignment_expression "local_e8 = local_e8 + -1" identifier = (binary_expression "local_e8 + -1" identifier + number_literal)) ;)) (if_statement "if (-1 < local_e8) {\n    while( true ) {\n      piVar1 = local_f0 + 1;\n      iVar3 = *local_f0;\n      pbVar12 = *(byte **)(iVar3 + 4);\n      local_f0 = piVar1;\n      if ((pbVar12 == (byte *)0x0) || (*pbVar12 == 0)) break;\n      bVar16 = false;\n      bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0;\n      if (!bVar18) {\n        iVar8 = 4;\n        pbVar11 = pbVar12;\n        pbVar14 = &DAT_0004c8bd;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);\n        bVar17 = false;\n        bVar16 = (!bVar16 && !bVar18) == bVar16;\n        if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }\n      }\n      if ((*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)) break;\n      *local_ec = iVar3;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }\n    goto LAB_00017428;\n  }" if (parenthesized_expression "(-1 < local_e8)" ( (binary_expression "-1 < local_e8" number_literal < identifier) )) (compound_statement "{\n    while( true ) {\n      piVar1 = local_f0 + 1;\n      iVar3 = *local_f0;\n      pbVar12 = *(byte **)(iVar3 + 4);\n      local_f0 = piVar1;\n      if ((pbVar12 == (byte *)0x0) || (*pbVar12 == 0)) break;\n      bVar16 = false;\n      bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0;\n      if (!bVar18) {\n        iVar8 = 4;\n        pbVar11 = pbVar12;\n        pbVar14 = &DAT_0004c8bd;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);\n        bVar17 = false;\n        bVar16 = (!bVar16 && !bVar18) == bVar16;\n        if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }\n      }\n      if ((*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)) break;\n      *local_ec = iVar3;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }\n    goto LAB_00017428;\n  }" { (while_statement "while( true ) {\n      piVar1 = local_f0 + 1;\n      iVar3 = *local_f0;\n      pbVar12 = *(byte **)(iVar3 + 4);\n      local_f0 = piVar1;\n      if ((pbVar12 == (byte *)0x0) || (*pbVar12 == 0)) break;\n      bVar16 = false;\n      bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0;\n      if (!bVar18) {\n        iVar8 = 4;\n        pbVar11 = pbVar12;\n        pbVar14 = &DAT_0004c8bd;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);\n        bVar17 = false;\n        bVar16 = (!bVar16 && !bVar18) == bVar16;\n        if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }\n      }\n      if ((*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)) break;\n      *local_ec = iVar3;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n      piVar1 = local_f0 + 1;\n      iVar3 = *local_f0;\n      pbVar12 = *(byte **)(iVar3 + 4);\n      local_f0 = piVar1;\n      if ((pbVar12 == (byte *)0x0) || (*pbVar12 == 0)) break;\n      bVar16 = false;\n      bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0;\n      if (!bVar18) {\n        iVar8 = 4;\n        pbVar11 = pbVar12;\n        pbVar14 = &DAT_0004c8bd;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);\n        bVar17 = false;\n        bVar16 = (!bVar16 && !bVar18) == bVar16;\n        if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }\n      }\n      if ((*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)) break;\n      *local_ec = iVar3;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }" { (expression_statement "piVar1 = local_f0 + 1;" (assignment_expression "piVar1 = local_f0 + 1" identifier = (binary_expression "local_f0 + 1" identifier + number_literal)) ;) (expression_statement "iVar3 = *local_f0;" (assignment_expression "iVar3 = *local_f0" identifier = (pointer_expression "*local_f0" * identifier)) ;) (expression_statement "pbVar12 = *(byte **)(iVar3 + 4);" (assignment_expression "pbVar12 = *(byte **)(iVar3 + 4)" identifier = (pointer_expression "*(byte **)(iVar3 + 4)" * (cast_expression "(byte **)(iVar3 + 4)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar3 + 4)" ( (binary_expression "iVar3 + 4" identifier + number_literal) ))))) ;) (expression_statement "local_f0 = piVar1;" (assignment_expression "local_f0 = piVar1" identifier = identifier) ;) (if_statement "if ((pbVar12 == (byte *)0x0) || (*pbVar12 == 0)) break;" if (parenthesized_expression "((pbVar12 == (byte *)0x0) || (*pbVar12 == 0))" ( (binary_expression "(pbVar12 == (byte *)0x0) || (*pbVar12 == 0)" (parenthesized_expression "(pbVar12 == (byte *)0x0)" ( (binary_expression "pbVar12 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(*pbVar12 == 0)" ( (binary_expression "*pbVar12 == 0" (pointer_expression "*pbVar12" * identifier) == number_literal) ))) )) (break_statement "break;" break ;)) (expression_statement "bVar16 = false;" (assignment_expression "bVar16 = false" identifier = false) ;) (expression_statement "bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0;" (assignment_expression "bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0" identifier = (binary_expression "(*(uint *)(iVar3 + 0xc) & 0x104) == 0" (parenthesized_expression "(*(uint *)(iVar3 + 0xc) & 0x104)" ( (binary_expression "*(uint *)(iVar3 + 0xc) & 0x104" (pointer_expression "*(uint *)(iVar3 + 0xc)" * (cast_expression "(uint *)(iVar3 + 0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0xc)" ( (binary_expression "iVar3 + 0xc" identifier + number_literal) )))) & number_literal) )) == number_literal)) ;) (if_statement "if (!bVar18) {\n        iVar8 = 4;\n        pbVar11 = pbVar12;\n        pbVar14 = &DAT_0004c8bd;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);\n        bVar17 = false;\n        bVar16 = (!bVar16 && !bVar18) == bVar16;\n        if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }\n      }" if (parenthesized_expression "(!bVar18)" ( (unary_expression "!bVar18" ! identifier) )) (compound_statement "{\n        iVar8 = 4;\n        pbVar11 = pbVar12;\n        pbVar14 = &DAT_0004c8bd;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);\n        bVar17 = false;\n        bVar16 = (!bVar16 && !bVar18) == bVar16;\n        if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }\n      }" { (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" identifier = number_literal) ;) (expression_statement "pbVar11 = pbVar12;" (assignment_expression "pbVar11 = pbVar12" identifier = identifier) ;) (expression_statement "pbVar14 = &DAT_0004c8bd;" (assignment_expression "pbVar14 = &DAT_0004c8bd" identifier = (pointer_expression "&DAT_0004c8bd" & identifier)) ;) (do_statement "do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);" do (compound_statement "{\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar16 = *pbVar11 < *pbVar14;" (assignment_expression "bVar16 = *pbVar11 < *pbVar14" identifier = (binary_expression "*pbVar11 < *pbVar14" (pointer_expression "*pbVar11" * identifier) < (pointer_expression "*pbVar14" * identifier))) ;) (expression_statement "bVar18 = *pbVar11 == *pbVar14;" (assignment_expression "bVar18 = *pbVar11 == *pbVar14" identifier = (binary_expression "*pbVar11 == *pbVar14" (pointer_expression "*pbVar11" * identifier) == (pointer_expression "*pbVar14" * identifier))) ;) (expression_statement "pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1" identifier = (binary_expression "pbVar11 + (uint)bVar19 * -2 + 1" (binary_expression "pbVar11 + (uint)bVar19 * -2" identifier + (binary_expression "(uint)bVar19 * -2" (cast_expression "(uint)bVar19" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;" (assignment_expression "pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1" identifier = (binary_expression "pbVar14 + (uint)bVar19 * -2 + 1" (binary_expression "pbVar14 + (uint)bVar19 * -2" identifier + (binary_expression "(uint)bVar19 * -2" (cast_expression "(uint)bVar19" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar18)" ( identifier )) ;) (expression_statement "bVar17 = false;" (assignment_expression "bVar17 = false" identifier = false) ;) (expression_statement "bVar16 = (!bVar16 && !bVar18) == bVar16;" (assignment_expression "bVar16 = (!bVar16 && !bVar18) == bVar16" identifier = (binary_expression "(!bVar16 && !bVar18) == bVar16" (parenthesized_expression "(!bVar16 && !bVar18)" ( (binary_expression "!bVar16 && !bVar18" (unary_expression "!bVar16" ! identifier) && (unary_expression "!bVar18" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }" if (parenthesized_expression "(!bVar16)" ( (unary_expression "!bVar16" ! identifier) )) (compound_statement "{\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }" { (expression_statement "iVar8 = 5;" (assignment_expression "iVar8 = 5" identifier = number_literal) ;) (expression_statement "pbVar11 = &DAT_0004c8c2;" (assignment_expression "pbVar11 = &DAT_0004c8c2" identifier = (pointer_expression "&DAT_0004c8c2" & identifier)) ;) (do_statement "do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);" do (compound_statement "{\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          }" { (if_statement "if (iVar8 == 0) break;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" identifier = (binary_expression "iVar8 + -1" identifier + number_literal)) ;) (expression_statement "bVar17 = *pbVar12 < *pbVar11;" (assignment_expression "bVar17 = *pbVar12 < *pbVar11" identifier = (binary_expression "*pbVar12 < *pbVar11" (pointer_expression "*pbVar12" * identifier) < (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "bVar16 = *pbVar12 == *pbVar11;" (assignment_expression "bVar16 = *pbVar12 == *pbVar11" identifier = (binary_expression "*pbVar12 == *pbVar11" (pointer_expression "*pbVar12" * identifier) == (pointer_expression "*pbVar11" * identifier))) ;) (expression_statement "pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;" (assignment_expression "pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1" identifier = (binary_expression "pbVar12 + (uint)bVar19 * -2 + 1" (binary_expression "pbVar12 + (uint)bVar19 * -2" identifier + (binary_expression "(uint)bVar19 * -2" (cast_expression "(uint)bVar19" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1" identifier = (binary_expression "pbVar11 + (uint)bVar19 * -2 + 1" (binary_expression "pbVar11 + (uint)bVar19 * -2" identifier + (binary_expression "(uint)bVar19 * -2" (cast_expression "(uint)bVar19" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar16)" ( identifier )) ;) (if_statement "if ((!bVar17 && !bVar16) != bVar17) break;" if (parenthesized_expression "((!bVar17 && !bVar16) != bVar17)" ( (binary_expression "(!bVar17 && !bVar16) != bVar17" (parenthesized_expression "(!bVar17 && !bVar16)" ( (binary_expression "!bVar17 && !bVar16" (unary_expression "!bVar17" ! identifier) && (unary_expression "!bVar16" ! identifier)) )) != identifier) )) (break_statement "break;" break ;)) })) })) (if_statement "if ((*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)) break;" if (parenthesized_expression "((*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0))" ( (binary_expression "(*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)" (parenthesized_expression "(*(undefined **)(iVar3 + 0x10) == puVar4)" ( (binary_expression "*(undefined **)(iVar3 + 0x10) == puVar4" (pointer_expression "*(undefined **)(iVar3 + 0x10)" * (cast_expression "(undefined **)(iVar3 + 0x10)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar3 + 0x10)" ( (binary_expression "iVar3 + 0x10" identifier + number_literal) )))) == identifier) )) || (parenthesized_expression "(((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)" ( (binary_expression "((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0" (parenthesized_expression "((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10)" ( (binary_expression "(*(undefined **)(iVar3 + 0x10))[0x15] & 0x10" (subscript_expression "(*(undefined **)(iVar3 + 0x10))[0x15]" (parenthesized_expression "(*(undefined **)(iVar3 + 0x10))" ( (pointer_expression "*(undefined **)(iVar3 + 0x10)" * (cast_expression "(undefined **)(iVar3 + 0x10)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar3 + 0x10)" ( (binary_expression "iVar3 + 0x10" identifier + number_literal) )))) )) [ number_literal ]) & number_literal) )) != number_literal) ))) )) (break_statement "break;" break ;)) (expression_statement "*local_ec = iVar3;" (assignment_expression "*local_ec = iVar3" (pointer_expression "*local_ec" * identifier) = identifier) ;) (expression_statement "local_ec = local_ec + 1;" (assignment_expression "local_ec = local_ec + 1" identifier = (binary_expression "local_ec + 1" identifier + number_literal)) ;) (expression_statement "local_e8 = local_e8 + -1;" (assignment_expression "local_e8 = local_e8 + -1" identifier = (binary_expression "local_e8 + -1" identifier + number_literal)) ;) (if_statement "if (local_e8 < 0) goto LAB_000174ab;" if (parenthesized_expression "(local_e8 < 0)" ( (binary_expression "local_e8 < 0" identifier < number_literal) )) (goto_statement "goto LAB_000174ab;" goto statement_identifier ;)) })) (goto_statement "goto LAB_00017428;" goto statement_identifier ;) })) (labeled_statement "LAB_000174ab:\n  DAT_00071060 = (int)local_ec - (int)__dest >> 2;" statement_identifier : (expression_statement "DAT_00071060 = (int)local_ec - (int)__dest >> 2;" (assignment_expression "DAT_00071060 = (int)local_ec - (int)__dest >> 2" identifier = (binary_expression "(int)local_ec - (int)__dest >> 2" (binary_expression "(int)local_ec - (int)__dest" (cast_expression "(int)local_ec" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)__dest" ( (type_descriptor "int" primitive_type) ) identifier)) >> number_literal)) ;)) (if_statement "if (0 < DAT_00071054) {\n    DAT_00071060 = DAT_00071060 + DAT_00071054;\n    pvVar10 = DAT_00071058;\n    do {\n      *local_ec = (int)pvVar10;\n      local_ec = local_ec + 1;\n      pvVar10 = (void *)((int)pvVar10 + 0x18);\n    } while (__dest + DAT_00071060 != local_ec);\n  }" if (parenthesized_expression "(0 < DAT_00071054)" ( (binary_expression "0 < DAT_00071054" number_literal < identifier) )) (compound_statement "{\n    DAT_00071060 = DAT_00071060 + DAT_00071054;\n    pvVar10 = DAT_00071058;\n    do {\n      *local_ec = (int)pvVar10;\n      local_ec = local_ec + 1;\n      pvVar10 = (void *)((int)pvVar10 + 0x18);\n    } while (__dest + DAT_00071060 != local_ec);\n  }" { (expression_statement "DAT_00071060 = DAT_00071060 + DAT_00071054;" (assignment_expression "DAT_00071060 = DAT_00071060 + DAT_00071054" identifier = (binary_expression "DAT_00071060 + DAT_00071054" identifier + identifier)) ;) (expression_statement "pvVar10 = DAT_00071058;" (assignment_expression "pvVar10 = DAT_00071058" identifier = identifier) ;) (do_statement "do {\n      *local_ec = (int)pvVar10;\n      local_ec = local_ec + 1;\n      pvVar10 = (void *)((int)pvVar10 + 0x18);\n    } while (__dest + DAT_00071060 != local_ec);" do (compound_statement "{\n      *local_ec = (int)pvVar10;\n      local_ec = local_ec + 1;\n      pvVar10 = (void *)((int)pvVar10 + 0x18);\n    }" { (expression_statement "*local_ec = (int)pvVar10;" (assignment_expression "*local_ec = (int)pvVar10" (pointer_expression "*local_ec" * identifier) = (cast_expression "(int)pvVar10" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "local_ec = local_ec + 1;" (assignment_expression "local_ec = local_ec + 1" identifier = (binary_expression "local_ec + 1" identifier + number_literal)) ;) (expression_statement "pvVar10 = (void *)((int)pvVar10 + 0x18);" (assignment_expression "pvVar10 = (void *)((int)pvVar10 + 0x18)" identifier = (cast_expression "(void *)((int)pvVar10 + 0x18)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pvVar10 + 0x18)" ( (binary_expression "(int)pvVar10 + 0x18" (cast_expression "(int)pvVar10" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) }) while (parenthesized_expression "(__dest + DAT_00071060 != local_ec)" ( (binary_expression "__dest + DAT_00071060 != local_ec" (binary_expression "__dest + DAT_00071060" identifier + identifier) != identifier) )) ;) })) (expression_statement "qsort(__dest,DAT_00071060,4,FUN_00015990);" (call_expression "qsort(__dest,DAT_00071060,4,FUN_00015990)" identifier (argument_list "(__dest,DAT_00071060,4,FUN_00015990)" ( identifier , identifier , number_literal , identifier ))) ;) (expression_statement "init_disassemble_info(local_b4,*(undefined4 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0);" (call_expression "init_disassemble_info(local_b4,*(undefined4 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0)" identifier (argument_list "(local_b4,*(undefined4 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0)" ( identifier , (pointer_expression "*(undefined4 *)PTR_stdout_0006ffdc" * (cast_expression "(undefined4 *)PTR_stdout_0006ffdc" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , identifier ))) ;) (expression_statement "local_ac = local_d0;" (assignment_expression "local_ac = local_d0" identifier = identifier) ;) (expression_statement "local_68 = FUN_000153c0;" (assignment_expression "local_68 = FUN_000153c0" identifier = identifier) ;) (expression_statement "local_64 = FUN_00014c20;" (assignment_expression "local_64 = FUN_00014c20" identifier = identifier) ;) (expression_statement "local_c8 = 0;" (assignment_expression "local_c8 = 0" identifier = number_literal) ;) (expression_statement "local_c4 = (void *)0x0;" (assignment_expression "local_c4 = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_c0 = 0;" (assignment_expression "local_c0 = 0" identifier = number_literal) ;) (expression_statement "local_b8 = 0;" (assignment_expression "local_b8 = 0" identifier = number_literal) ;) (expression_statement "local_d0[0] = param_1;" (assignment_expression "local_d0[0] = param_1" (subscript_expression "local_d0[0]" identifier [ number_literal ]) = identifier) ;) (if_statement "if (DAT_00071074 != 0) {\n    iVar8 = bfd_scan_arch(DAT_00071074);\n    iVar3 = DAT_00071074;\n    if (iVar8 == 0) {\n      uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    \n      FUN_00045180(uVar2,iVar3);\n    }\n    param_1[0x20] = iVar8;\n  }" if (parenthesized_expression "(DAT_00071074 != 0)" ( (binary_expression "DAT_00071074 != 0" identifier != number_literal) )) (compound_statement "{\n    iVar8 = bfd_scan_arch(DAT_00071074);\n    iVar3 = DAT_00071074;\n    if (iVar8 == 0) {\n      uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    \n      FUN_00045180(uVar2,iVar3);\n    }\n    param_1[0x20] = iVar8;\n  }" { (expression_statement "iVar8 = bfd_scan_arch(DAT_00071074);" (assignment_expression "iVar8 = bfd_scan_arch(DAT_00071074)" identifier = (call_expression "bfd_scan_arch(DAT_00071074)" identifier (argument_list "(DAT_00071074)" ( identifier )))) ;) (expression_statement "iVar3 = DAT_00071074;" (assignment_expression "iVar3 = DAT_00071074" identifier = identifier) ;) (if_statement "if (iVar8 == 0) {\n      uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    \n      FUN_00045180(uVar2,iVar3);\n    }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n      uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    \n      FUN_00045180(uVar2,iVar3);\n    }" { (expression_statement "uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest);" (assignment_expression "uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest)" identifier = (call_expression "dcgettext(0,"can\'t use supplied machine %s",5,__dest)" identifier (argument_list "(0,"can\'t use supplied machine %s",5,__dest)" ( number_literal , (string_literal ""can\'t use supplied machine %s"" " string_content escape_sequence string_content ") , number_literal , identifier )))) ;) (expression_statement "FUN_00045180(uVar2,iVar3);" (call_expression "FUN_00045180(uVar2,iVar3)" identifier (argument_list "(uVar2,iVar3)" ( identifier , identifier ))) ;) })) (expression_statement "param_1[0x20] = iVar8;" (assignment_expression "param_1[0x20] = iVar8" (subscript_expression "param_1[0x20]" identifier [ number_literal ]) = identifier) ;) })) (if_statement "if (DAT_00070228 != 2) {\n    puVar5 = (undefined4 *)xmalloc(0x1c4);\n    puVar13 = (undefined4 *)param_1[1];\n    iVar3 = (int)puVar5 - (int)((uint)(puVar5 + 1) & 0xfffffffc);\n    *puVar5 = *puVar13;\n    puVar5[0x70] = puVar13[0x70];\n    puVar13 = (undefined4 *)((int)puVar13 - iVar3);\n    puVar15 = (undefined4 *)((uint)(puVar5 + 1) & 0xfffffffc);\n    for (uVar9 = iVar3 + 0x1c4U >> 2; uVar9 != 0; uVar9 = uVar9 - 1) {\n      *puVar15 = *puVar13;\n      puVar13 = puVar13 + (uint)bVar19 * -2 + 1;\n      puVar15 = puVar15 + (uint)bVar19 * -2 + 1;\n    }\n    param_1[1] = puVar5;\n    puVar5[2] = DAT_00070228;\n  }" if (parenthesized_expression "(DAT_00070228 != 2)" ( (binary_expression "DAT_00070228 != 2" identifier != number_literal) )) (compound_statement "{\n    puVar5 = (undefined4 *)xmalloc(0x1c4);\n    puVar13 = (undefined4 *)param_1[1];\n    iVar3 = (int)puVar5 - (int)((uint)(puVar5 + 1) & 0xfffffffc);\n    *puVar5 = *puVar13;\n    puVar5[0x70] = puVar13[0x70];\n    puVar13 = (undefined4 *)((int)puVar13 - iVar3);\n    puVar15 = (undefined4 *)((uint)(puVar5 + 1) & 0xfffffffc);\n    for (uVar9 = iVar3 + 0x1c4U >> 2; uVar9 != 0; uVar9 = uVar9 - 1) {\n      *puVar15 = *puVar13;\n      puVar13 = puVar13 + (uint)bVar19 * -2 + 1;\n      puVar15 = puVar15 + (uint)bVar19 * -2 + 1;\n    }\n    param_1[1] = puVar5;\n    puVar5[2] = DAT_00070228;\n  }" { (expression_statement "puVar5 = (undefined4 *)xmalloc(0x1c4);" (assignment_expression "puVar5 = (undefined4 *)xmalloc(0x1c4)" identifier = (cast_expression "(undefined4 *)xmalloc(0x1c4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(0x1c4)" identifier (argument_list "(0x1c4)" ( number_literal ))))) ;) (expression_statement "puVar13 = (undefined4 *)param_1[1];" (assignment_expression "puVar13 = (undefined4 *)param_1[1]" identifier = (cast_expression "(undefined4 *)param_1[1]" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[1]" identifier [ number_literal ]))) ;) (expression_statement "iVar3 = (int)puVar5 - (int)((uint)(puVar5 + 1) & 0xfffffffc);" (assignment_expression "iVar3 = (int)puVar5 - (int)((uint)(puVar5 + 1) & 0xfffffffc)" identifier = (binary_expression "(int)puVar5 - (int)((uint)(puVar5 + 1) & 0xfffffffc)" (cast_expression "(int)puVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)((uint)(puVar5 + 1) & 0xfffffffc)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((uint)(puVar5 + 1) & 0xfffffffc)" ( (binary_expression "(uint)(puVar5 + 1) & 0xfffffffc" (call_expression "(uint)(puVar5 + 1)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(puVar5 + 1)" ( (binary_expression "puVar5 + 1" identifier + number_literal) ))) & number_literal) ))))) ;) (expression_statement "*puVar5 = *puVar13;" (assignment_expression "*puVar5 = *puVar13" (pointer_expression "*puVar5" * identifier) = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "puVar5[0x70] = puVar13[0x70];" (assignment_expression "puVar5[0x70] = puVar13[0x70]" (subscript_expression "puVar5[0x70]" identifier [ number_literal ]) = (subscript_expression "puVar13[0x70]" identifier [ number_literal ])) ;) (expression_statement "puVar13 = (undefined4 *)((int)puVar13 - iVar3);" (assignment_expression "puVar13 = (undefined4 *)((int)puVar13 - iVar3)" identifier = (cast_expression "(undefined4 *)((int)puVar13 - iVar3)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar13 - iVar3)" ( (binary_expression "(int)puVar13 - iVar3" (cast_expression "(int)puVar13" ( (type_descriptor "int" primitive_type) ) identifier) - identifier) )))) ;) (expression_statement "puVar15 = (undefined4 *)((uint)(puVar5 + 1) & 0xfffffffc);" (assignment_expression "puVar15 = (undefined4 *)((uint)(puVar5 + 1) & 0xfffffffc)" identifier = (cast_expression "(undefined4 *)((uint)(puVar5 + 1) & 0xfffffffc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)(puVar5 + 1) & 0xfffffffc)" ( (binary_expression "(uint)(puVar5 + 1) & 0xfffffffc" (call_expression "(uint)(puVar5 + 1)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(puVar5 + 1)" ( (binary_expression "puVar5 + 1" identifier + number_literal) ))) & number_literal) )))) ;) (for_statement "for (uVar9 = iVar3 + 0x1c4U >> 2; uVar9 != 0; uVar9 = uVar9 - 1) {\n      *puVar15 = *puVar13;\n      puVar13 = puVar13 + (uint)bVar19 * -2 + 1;\n      puVar15 = puVar15 + (uint)bVar19 * -2 + 1;\n    }" for ( (assignment_expression "uVar9 = iVar3 + 0x1c4U >> 2" identifier = (binary_expression "iVar3 + 0x1c4U >> 2" (binary_expression "iVar3 + 0x1c4U" identifier + number_literal) >> number_literal)) ; (binary_expression "uVar9 != 0" identifier != number_literal) ; (assignment_expression "uVar9 = uVar9 - 1" identifier = (binary_expression "uVar9 - 1" identifier - number_literal)) ) (compound_statement "{\n      *puVar15 = *puVar13;\n      puVar13 = puVar13 + (uint)bVar19 * -2 + 1;\n      puVar15 = puVar15 + (uint)bVar19 * -2 + 1;\n    }" { (expression_statement "*puVar15 = *puVar13;" (assignment_expression "*puVar15 = *puVar13" (pointer_expression "*puVar15" * identifier) = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "puVar13 = puVar13 + (uint)bVar19 * -2 + 1;" (assignment_expression "puVar13 = puVar13 + (uint)bVar19 * -2 + 1" identifier = (binary_expression "puVar13 + (uint)bVar19 * -2 + 1" (binary_expression "puVar13 + (uint)bVar19 * -2" identifier + (binary_expression "(uint)bVar19 * -2" (cast_expression "(uint)bVar19" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "puVar15 = puVar15 + (uint)bVar19 * -2 + 1;" (assignment_expression "puVar15 = puVar15 + (uint)bVar19 * -2 + 1" identifier = (binary_expression "puVar15 + (uint)bVar19 * -2 + 1" (binary_expression "puVar15 + (uint)bVar19 * -2" identifier + (binary_expression "(uint)bVar19 * -2" (cast_expression "(uint)bVar19" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) })) (expression_statement "param_1[1] = puVar5;" (assignment_expression "param_1[1] = puVar5" (subscript_expression "param_1[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar5[2] = DAT_00070228;" (assignment_expression "puVar5[2] = DAT_00070228" (subscript_expression "puVar5[2]" identifier [ number_literal ]) = identifier) ;) })) (expression_statement "uVar2 = bfd_get_mach(param_1);" (assignment_expression "uVar2 = bfd_get_mach(param_1)" identifier = (call_expression "bfd_get_mach(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (expression_statement "iVar3 = *(int *)(param_1[1] + 8);" (assignment_expression "iVar3 = *(int *)(param_1[1] + 8)" identifier = (pointer_expression "*(int *)(param_1[1] + 8)" * (cast_expression "(int *)(param_1[1] + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1[1] + 8)" ( (binary_expression "param_1[1] + 8" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) ))))) ;) (expression_statement "uVar7 = bfd_get_arch(param_1);" (assignment_expression "uVar7 = bfd_get_arch(param_1)" identifier = (call_expression "bfd_get_arch(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (expression_statement "local_bc = disassembler(uVar7,iVar3 == 0,uVar2,param_1);" (assignment_expression "local_bc = disassembler(uVar7,iVar3 == 0,uVar2,param_1)" identifier = (call_expression "disassembler(uVar7,iVar3 == 0,uVar2,param_1)" identifier (argument_list "(uVar7,iVar3 == 0,uVar2,param_1)" ( identifier , (binary_expression "iVar3 == 0" identifier == number_literal) , identifier , identifier )))) ;) (if_statement "if (local_bc == 0) {\n    uVar2 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar2,0);\n    uVar7 = dcgettext(0,"can\'t disassemble for architecture %s\n",5);\n    FUN_000451b0(uVar7,uVar2);\n    DAT_00071110 = 1;\n  }\n  else {\n    local_a8 = *(undefined4 *)(param_1[1] + 4);\n    local_a4 = bfd_get_arch(param_1);\n    local_a0 = bfd_get_mach(param_1);\n    local_24 = DAT_00071070;\n    local_44 = bfd_octets_per_byte(param_1);\n    local_40 = 8;\n    local_3c = 3;\n    local_38 = 0;\n    if (*(int *)(param_1[1] + 8) == 0) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (*(int *)(param_1[1] + 8) == 1) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }\n    disassemble_init_for_target(local_b4);\n    iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n    if (iVar3 < 0) {\n      if (DAT_000710f0 != 0) {\nLAB_00017bfe:\n                    \n        FUN_000450f0(*param_1);\n      }\n    }\n    else if (iVar3 != 0) {\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }\n    local_84 = DAT_00071064;\n    local_7c = DAT_00071060;\n    bfd_map_over_sections(param_1,FUN_00018770,local_b4);\n    if (local_c4 != (void *)0x0) {\n      free(local_c4);\n    }\n    free(DAT_00071064);\n  }" if (parenthesized_expression "(local_bc == 0)" ( (binary_expression "local_bc == 0" identifier == number_literal) )) (compound_statement "{\n    uVar2 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar2,0);\n    uVar7 = dcgettext(0,"can\'t disassemble for architecture %s\n",5);\n    FUN_000451b0(uVar7,uVar2);\n    DAT_00071110 = 1;\n  }" { (expression_statement "uVar2 = bfd_get_arch(param_1);" (assignment_expression "uVar2 = bfd_get_arch(param_1)" identifier = (call_expression "bfd_get_arch(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (expression_statement "uVar2 = bfd_printable_arch_mach(uVar2,0);" (assignment_expression "uVar2 = bfd_printable_arch_mach(uVar2,0)" identifier = (call_expression "bfd_printable_arch_mach(uVar2,0)" identifier (argument_list "(uVar2,0)" ( identifier , number_literal )))) ;) (expression_statement "uVar7 = dcgettext(0,"can\'t disassemble for architecture %s\n",5);" (assignment_expression "uVar7 = dcgettext(0,"can\'t disassemble for architecture %s\n",5)" identifier = (call_expression "dcgettext(0,"can\'t disassemble for architecture %s\n",5)" identifier (argument_list "(0,"can\'t disassemble for architecture %s\n",5)" ( number_literal , (string_literal ""can\'t disassemble for architecture %s\n"" " string_content escape_sequence string_content escape_sequence ") , number_literal )))) ;) (expression_statement "FUN_000451b0(uVar7,uVar2);" (call_expression "FUN_000451b0(uVar7,uVar2)" identifier (argument_list "(uVar7,uVar2)" ( identifier , identifier ))) ;) (expression_statement "DAT_00071110 = 1;" (assignment_expression "DAT_00071110 = 1" identifier = number_literal) ;) }) (else_clause "else {\n    local_a8 = *(undefined4 *)(param_1[1] + 4);\n    local_a4 = bfd_get_arch(param_1);\n    local_a0 = bfd_get_mach(param_1);\n    local_24 = DAT_00071070;\n    local_44 = bfd_octets_per_byte(param_1);\n    local_40 = 8;\n    local_3c = 3;\n    local_38 = 0;\n    if (*(int *)(param_1[1] + 8) == 0) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (*(int *)(param_1[1] + 8) == 1) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }\n    disassemble_init_for_target(local_b4);\n    iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n    if (iVar3 < 0) {\n      if (DAT_000710f0 != 0) {\nLAB_00017bfe:\n                    \n        FUN_000450f0(*param_1);\n      }\n    }\n    else if (iVar3 != 0) {\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }\n    local_84 = DAT_00071064;\n    local_7c = DAT_00071060;\n    bfd_map_over_sections(param_1,FUN_00018770,local_b4);\n    if (local_c4 != (void *)0x0) {\n      free(local_c4);\n    }\n    free(DAT_00071064);\n  }" else (compound_statement "{\n    local_a8 = *(undefined4 *)(param_1[1] + 4);\n    local_a4 = bfd_get_arch(param_1);\n    local_a0 = bfd_get_mach(param_1);\n    local_24 = DAT_00071070;\n    local_44 = bfd_octets_per_byte(param_1);\n    local_40 = 8;\n    local_3c = 3;\n    local_38 = 0;\n    if (*(int *)(param_1[1] + 8) == 0) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (*(int *)(param_1[1] + 8) == 1) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }\n    disassemble_init_for_target(local_b4);\n    iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n    if (iVar3 < 0) {\n      if (DAT_000710f0 != 0) {\nLAB_00017bfe:\n                    \n        FUN_000450f0(*param_1);\n      }\n    }\n    else if (iVar3 != 0) {\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }\n    local_84 = DAT_00071064;\n    local_7c = DAT_00071060;\n    bfd_map_over_sections(param_1,FUN_00018770,local_b4);\n    if (local_c4 != (void *)0x0) {\n      free(local_c4);\n    }\n    free(DAT_00071064);\n  }" { (expression_statement "local_a8 = *(undefined4 *)(param_1[1] + 4);" (assignment_expression "local_a8 = *(undefined4 *)(param_1[1] + 4)" identifier = (pointer_expression "*(undefined4 *)(param_1[1] + 4)" * (cast_expression "(undefined4 *)(param_1[1] + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1[1] + 4)" ( (binary_expression "param_1[1] + 4" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) ))))) ;) (expression_statement "local_a4 = bfd_get_arch(param_1);" (assignment_expression "local_a4 = bfd_get_arch(param_1)" identifier = (call_expression "bfd_get_arch(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (expression_statement "local_a0 = bfd_get_mach(param_1);" (assignment_expression "local_a0 = bfd_get_mach(param_1)" identifier = (call_expression "bfd_get_mach(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (expression_statement "local_24 = DAT_00071070;" (assignment_expression "local_24 = DAT_00071070" identifier = identifier) ;) (expression_statement "local_44 = bfd_octets_per_byte(param_1);" (assignment_expression "local_44 = bfd_octets_per_byte(param_1)" identifier = (call_expression "bfd_octets_per_byte(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (expression_statement "local_40 = 8;" (assignment_expression "local_40 = 8" identifier = number_literal) ;) (expression_statement "local_3c = 3;" (assignment_expression "local_3c = 3" identifier = number_literal) ;) (expression_statement "local_38 = 0;" (assignment_expression "local_38 = 0" identifier = number_literal) ;) (if_statement "if (*(int *)(param_1[1] + 8) == 0) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (*(int *)(param_1[1] + 8) == 1) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }" if (parenthesized_expression "(*(int *)(param_1[1] + 8) == 0)" ( (binary_expression "*(int *)(param_1[1] + 8) == 0" (pointer_expression "*(int *)(param_1[1] + 8)" * (cast_expression "(int *)(param_1[1] + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1[1] + 8)" ( (binary_expression "param_1[1] + 8" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) )))) == number_literal) )) (compound_statement "{\n      local_9c = 0;\n      local_48 = 0;\n    }" { (expression_statement "local_9c = 0;" (assignment_expression "local_9c = 0" identifier = number_literal) ;) (expression_statement "local_48 = 0;" (assignment_expression "local_48 = 0" identifier = number_literal) ;) }) (else_clause "else if (*(int *)(param_1[1] + 8) == 1) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }" else (if_statement "if (*(int *)(param_1[1] + 8) == 1) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }" if (parenthesized_expression "(*(int *)(param_1[1] + 8) == 1)" ( (binary_expression "*(int *)(param_1[1] + 8) == 1" (pointer_expression "*(int *)(param_1[1] + 8)" * (cast_expression "(int *)(param_1[1] + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1[1] + 8)" ( (binary_expression "param_1[1] + 8" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) )))) == number_literal) )) (compound_statement "{\n      local_9c = 1;\n      local_48 = 1;\n    }" { (expression_statement "local_9c = 1;" (assignment_expression "local_9c = 1" identifier = number_literal) ;) (expression_statement "local_48 = 1;" (assignment_expression "local_48 = 1" identifier = number_literal) ;) }) (else_clause "else {\n      local_9c = 2;\n    }" else (compound_statement "{\n      local_9c = 2;\n    }" { (expression_statement "local_9c = 2;" (assignment_expression "local_9c = 2" identifier = number_literal) ;) }))))) (expression_statement "disassemble_init_for_target(local_b4);" (call_expression "disassemble_init_for_target(local_b4)" identifier (argument_list "(local_b4)" ( identifier ))) ;) (expression_statement "iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);" (assignment_expression "iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1)" identifier = (call_expression "(**(code **)(param_1[1] + 0x1b4))(param_1)" (parenthesized_expression "(**(code **)(param_1[1] + 0x1b4))" ( (pointer_expression "**(code **)(param_1[1] + 0x1b4)" * (pointer_expression "*(code **)(param_1[1] + 0x1b4)" * (cast_expression "(code **)(param_1[1] + 0x1b4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1[1] + 0x1b4)" ( (binary_expression "param_1[1] + 0x1b4" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) ))))) )) (argument_list "(param_1)" ( identifier )))) ;) (if_statement "if (iVar3 < 0) {\n      if (DAT_000710f0 != 0) {\nLAB_00017bfe:\n                    \n        FUN_000450f0(*param_1);\n      }\n    }\n    else if (iVar3 != 0) {\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }" if (parenthesized_expression "(iVar3 < 0)" ( (binary_expression "iVar3 < 0" identifier < number_literal) )) (compound_statement "{\n      if (DAT_000710f0 != 0) {\nLAB_00017bfe:\n                    \n        FUN_000450f0(*param_1);\n      }\n    }" { (if_statement "if (DAT_000710f0 != 0) {\nLAB_00017bfe:\n                    \n        FUN_000450f0(*param_1);\n      }" if (parenthesized_expression "(DAT_000710f0 != 0)" ( (binary_expression "DAT_000710f0 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_00017bfe:\n                    \n        FUN_000450f0(*param_1);\n      }" { (labeled_statement "LAB_00017bfe:\n                    \n        FUN_000450f0(*param_1);" statement_identifier : (expression_statement "FUN_000450f0(*param_1);" (call_expression "FUN_000450f0(*param_1)" identifier (argument_list "(*param_1)" ( (pointer_expression "*param_1" * identifier) ))) ;)) })) }) (else_clause "else if (iVar3 != 0) {\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }" else (if_statement "if (iVar3 != 0) {\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }" { (expression_statement "local_c4 = (void *)xmalloc(iVar3);" (assignment_expression "local_c4 = (void *)xmalloc(iVar3)" identifier = (cast_expression "(void *)xmalloc(iVar3)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(iVar3)" identifier (argument_list "(iVar3)" ( identifier ))))) ;) (expression_statement "local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);" (assignment_expression "local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c)" identifier = (call_expression "(**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c)" (parenthesized_expression "(**(code **)(param_1[1] + 0x1b8))" ( (pointer_expression "**(code **)(param_1[1] + 0x1b8)" * (pointer_expression "*(code **)(param_1[1] + 0x1b8)" * (cast_expression "(code **)(param_1[1] + 0x1b8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1[1] + 0x1b8)" ( (binary_expression "param_1[1] + 0x1b8" (subscript_expression "param_1[1]" identifier [ number_literal ]) + number_literal) ))))) )) (argument_list "(param_1,local_c4,DAT_0007105c)" ( identifier , identifier , identifier )))) ;) (if_statement "if ((int)local_c0 < 0) goto LAB_00017bfe;" if (parenthesized_expression "((int)local_c0 < 0)" ( (binary_expression "(int)local_c0 < 0" (cast_expression "(int)local_c0" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (goto_statement "goto LAB_00017bfe;" goto statement_identifier ;)) (expression_statement "qsort(local_c4,local_c0,4,FUN_000144e0);" (call_expression "qsort(local_c4,local_c0,4,FUN_000144e0)" identifier (argument_list "(local_c4,local_c0,4,FUN_000144e0)" ( identifier , identifier , number_literal , identifier ))) ;) })))) (expression_statement "local_84 = DAT_00071064;" (assignment_expression "local_84 = DAT_00071064" identifier = identifier) ;) (expression_statement "local_7c = DAT_00071060;" (assignment_expression "local_7c = DAT_00071060" identifier = identifier) ;) (expression_statement "bfd_map_over_sections(param_1,FUN_00018770,local_b4);" (call_expression "bfd_map_over_sections(param_1,FUN_00018770,local_b4)" identifier (argument_list "(param_1,FUN_00018770,local_b4)" ( identifier , identifier , identifier ))) ;) (if_statement "if (local_c4 != (void *)0x0) {\n      free(local_c4);\n    }" if (parenthesized_expression "(local_c4 != (void *)0x0)" ( (binary_expression "local_c4 != (void *)0x0" identifier != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      free(local_c4);\n    }" { (expression_statement "free(local_c4);" (call_expression "free(local_c4)" identifier (argument_list "(local_c4)" ( identifier ))) ;) })) (expression_statement "free(DAT_00071064);" (call_expression "free(DAT_00071064)" identifier (argument_list "(DAT_00071064)" ( identifier ))) ;) }))) (labeled_statement "joined_r0x0001721a:\n  if (DAT_000710ac != 0) {\n    iVar3 = FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1);\n    if (iVar3 == 0) {\n      if (DAT_000710d0 == 0) {\n        FUN_00034950();\n        FUN_00015f30();\n      }\n    }\n    else {\n      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);\n      if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }\n    }\n  }" statement_identifier : (if_statement "if (DAT_000710ac != 0) {\n    iVar3 = FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1);\n    if (iVar3 == 0) {\n      if (DAT_000710d0 == 0) {\n        FUN_00034950();\n        FUN_00015f30();\n      }\n    }\n    else {\n      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);\n      if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }\n    }\n  }" if (parenthesized_expression "(DAT_000710ac != 0)" ( (binary_expression "DAT_000710ac != 0" identifier != number_literal) )) (compound_statement "{\n    iVar3 = FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1);\n    if (iVar3 == 0) {\n      if (DAT_000710d0 == 0) {\n        FUN_00034950();\n        FUN_00015f30();\n      }\n    }\n    else {\n      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);\n      if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }\n    }\n  }" { (expression_statement "iVar3 = FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1);" (assignment_expression "iVar3 = FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1)" identifier = (call_expression "FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1)" identifier (argument_list "(param_1,DAT_0007106c,DAT_00071068,1)" ( identifier , identifier , identifier , number_literal )))) ;) (if_statement "if (iVar3 == 0) {\n      if (DAT_000710d0 == 0) {\n        FUN_00034950();\n        FUN_00015f30();\n      }\n    }\n    else {\n      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);\n      if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }\n    }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n      if (DAT_000710d0 == 0) {\n        FUN_00034950();\n        FUN_00015f30();\n      }\n    }" { (if_statement "if (DAT_000710d0 == 0) {\n        FUN_00034950();\n        FUN_00015f30();\n      }" if (parenthesized_expression "(DAT_000710d0 == 0)" ( (binary_expression "DAT_000710d0 == 0" identifier == number_literal) )) (compound_statement "{\n        FUN_00034950();\n        FUN_00015f30();\n      }" { (expression_statement "FUN_00034950();" (call_expression "FUN_00034950()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_00015f30();" (call_expression "FUN_00015f30()" identifier (argument_list "()" ( ))) ;) })) }) (else_clause "else {\n      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);\n      if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }\n    }" else (compound_statement "{\n      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);\n      if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }\n    }" { (expression_statement "iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);" (assignment_expression "iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0)" identifier = (call_expression "FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0)" identifier (argument_list "(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0)" ( (pointer_expression "*(undefined4 *)PTR_stdout_0006ffdc" * (cast_expression "(undefined4 *)PTR_stdout_0006ffdc" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , identifier , identifier , identifier , identifier , (binary_expression "DAT_000710a8 != 0" identifier != number_literal) )))) ;) (if_statement "if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }" { (expression_statement "uVar2 = *param_1;" (assignment_expression "uVar2 = *param_1" identifier = (pointer_expression "*param_1" * identifier)) ;) (expression_statement "uVar7 = dcgettext(0,"%s: printing debugging information failed",5);" (assignment_expression "uVar7 = dcgettext(0,"%s: printing debugging information failed",5)" identifier = (call_expression "dcgettext(0,"%s: printing debugging information failed",5)" identifier (argument_list "(0,"%s: printing debugging information failed",5)" ( number_literal , (string_literal ""%s: printing debugging information failed"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_000451b0(uVar7,uVar2);" (call_expression "FUN_000451b0(uVar7,uVar2)" identifier (argument_list "(uVar7,uVar2)" ( identifier , identifier ))) ;) (expression_statement "DAT_00071110 = 1;" (assignment_expression "DAT_00071110 = 1" identifier = number_literal) ;) })) }))) }))) (if_statement "if (DAT_0007106c != (void *)0x0) {\n    free(DAT_0007106c);\n    DAT_0007106c = (void *)0x0;\n  }" if (parenthesized_expression "(DAT_0007106c != (void *)0x0)" ( (binary_expression "DAT_0007106c != (void *)0x0" identifier != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    free(DAT_0007106c);\n    DAT_0007106c = (void *)0x0;\n  }" { (expression_statement "free(DAT_0007106c);" (call_expression "free(DAT_0007106c)" identifier (argument_list "(DAT_0007106c)" ( identifier ))) ;) (expression_statement "DAT_0007106c = (void *)0x0;" (assignment_expression "DAT_0007106c = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (if_statement "if (DAT_0007105c != (void *)0x0) {\n    free(DAT_0007105c);\n    DAT_0007105c = (void *)0x0;\n  }" if (parenthesized_expression "(DAT_0007105c != (void *)0x0)" ( (binary_expression "DAT_0007105c != (void *)0x0" identifier != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    free(DAT_0007105c);\n    DAT_0007105c = (void *)0x0;\n  }" { (expression_statement "free(DAT_0007105c);" (call_expression "free(DAT_0007105c)" identifier (argument_list "(DAT_0007105c)" ( identifier ))) ;) (expression_statement "DAT_0007105c = (void *)0x0;" (assignment_expression "DAT_0007105c = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (if_statement "if (DAT_00071058 != (void *)0x0) {\n    free(DAT_00071058);\n    DAT_00071058 = (void *)0x0;\n  }" if (parenthesized_expression "(DAT_00071058 != (void *)0x0)" ( (binary_expression "DAT_00071058 != (void *)0x0" identifier != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    free(DAT_00071058);\n    DAT_00071058 = (void *)0x0;\n  }" { (expression_statement "free(DAT_00071058);" (call_expression "free(DAT_00071058)" identifier (argument_list "(DAT_00071058)" ( identifier ))) ;) (expression_statement "DAT_00071058 = (void *)0x0;" (assignment_expression "DAT_00071058 = (void *)0x0" identifier = (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (expression_statement "DAT_00071068 = 0;" (assignment_expression "DAT_00071068 = 0" identifier = number_literal) ;) (expression_statement "DAT_00071050 = 0;" (assignment_expression "DAT_00071050 = 0" identifier = number_literal) ;) (expression_statement "DAT_00071054 = 0;" (assignment_expression "DAT_00071054 = 0" identifier = number_literal) ;) (return_statement "return;" return ;) })))
(translation_unit (function_definition TYPE (ERROR IDENT) (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (declaration TYPE (pointer_declarator * 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 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 (pointer_declarator * 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 IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) && (binary_expression IDENT == LIT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_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 , IDENT , IDENT ))) ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) >> LIT) & LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) && (binary_expression IDENT == LIT)) )) (goto_statement goto statement_identifier ;)) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , IDENT , LIT , LIT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (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 (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 = (subscript_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 (binary_expression IDENT >> LIT) & LIT) ))) ;) (expression_statement (assignment_expression IDENT = (string_literal " ")) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) >> LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , (pointer_expression & IDENT) , (string_literal " string_content ") ))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) >> LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT , (string_literal " string_content ") ))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) >> LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT , (string_literal " string_content ") ))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) >> LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT , (string_literal " string_content ") ))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) >> LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT , (string_literal " string_content ") ))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) >> LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT , (string_literal " string_content ") ))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) >> LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT , (string_literal " string_content ") ))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) >> LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT , (string_literal " string_content ") ))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) >> LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT , (string_literal " string_content ") ))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) >> LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , 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 " escape_sequence string_content ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (subscript_expression IDENT [ LIT ]) ))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression * (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 = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) && (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)) ))) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) || (binary_expression IDENT != LIT)) )) || (binary_expression IDENT != LIT)) )) || (binary_expression IDENT != LIT)) )) || (binary_expression IDENT != LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) ))))) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT , IDENT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT ))))) ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) ))))) )) (argument_list ( IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (goto_statement goto statement_identifier ;)) }))) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (subscript_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 ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (string_literal " string_content ") , LIT , (pointer_expression & IDENT) , LIT , (pointer_expression & 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 ( LIT , (string_literal " string_content ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) && (binary_expression IDENT == LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) ))))) )) (argument_list ( IDENT )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (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 = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT ))))) ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) ))))) )) (argument_list ( 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) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT , IDENT , IDENT , (pointer_expression & IDENT) )))) , (binary_expression IDENT < LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) })) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) ))))) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content escape_sequence ") ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) ))))) )) (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 IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content escape_sequence ") ))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " escape_sequence ") ))) ;) }))) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) }))) }))) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , LIT ))) ;)) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , LIT ))) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;))) }))) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_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 = IDENT) ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression IDENT + IDENT) )) * LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (binary_expression IDENT << LIT) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (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 = 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 (pointer_expression * IDENT) == LIT) ))) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) == LIT)) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (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 ( (unary_expression ! IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (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) )) (break_statement break ;)) })) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == IDENT) )) || (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) [ LIT ]) & LIT) )) != LIT) ))) )) (break_statement break ;)) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (goto_statement goto statement_identifier ;)) })) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) >> LIT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (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) + LIT) )))) ;) }) while (parenthesized_expression ( (binary_expression (binary_expression IDENT + IDENT) != IDENT) )) ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) 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 = 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 (subscript_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 ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence string_content ") , LIT , IDENT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) })) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = 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 ( LIT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT + LIT) ))) & LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_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) - IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT + LIT) ))) & LIT) )))) ;) (for_statement for ( (assignment_expression IDENT = (binary_expression (binary_expression IDENT + LIT) >> LIT)) ; (binary_expression IDENT != LIT) ; (assignment_expression IDENT = (binary_expression IDENT - LIT)) ) (compound_statement { (expression_statement (assignment_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)) ;) })) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT == LIT) , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }))))) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) ))))) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * IDENT) ))) ;)) })) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , IDENT ))) ;) })))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) }))) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , IDENT , IDENT , IDENT , IDENT , (binary_expression IDENT != LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (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 = LIT) ;) })) }))) }))) (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (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) ;) (return_statement return ;) })))
(function_definition "void __regparm3 FUN_00016fd0(undefined4 *param_1)\n\n{\n  int *piVar1;\n  undefined4 uVar2;\n  int iVar3;\n  int *__dest;\n  undefined *puVar4;\n  undefined4 *puVar5;\n  char *pcVar6;\n  undefined4 uVar7;\n  int iVar8;\n  uint uVar9;\n  void *pvVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  undefined4 *puVar13;\n  byte *pbVar14;\n  undefined4 *puVar15;\n  bool bVar16;\n  bool bVar17;\n  bool bVar18;\n  byte bVar19;\n  int *local_f0;\n  int *local_ec;\n  int local_e8;\n  undefined4 *local_d0 [2];\n  undefined4 local_c8;\n  void *local_c4;\n  size_t local_c0;\n  int local_bc;\n  undefined4 local_b8;\n  uint local_b4 [2];\n  undefined4 **local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  undefined4 local_a0;\n  undefined4 local_9c;\n  int *local_84;\n  size_t local_7c;\n  code *local_68;\n  code *local_64;\n  undefined4 local_48;\n  undefined4 local_44;\n  undefined4 local_40;\n  undefined4 local_3c;\n  undefined4 local_38;\n  undefined4 local_24;\n  undefined4 uStack_14;\n  \n  bVar19 = 0;\n  uStack_14 = 0x16fdb;\n  if (DAT_0007109c == 0) {\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\nLAB_00017807:\n      uVar2 = *param_1;\n      uVar7 = *(undefined4 *)param_1[1];\n      pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(pcVar6,uVar2,uVar7);\n    }\n  }\n  else {\n    local_b4[0] = (uint)param_1[10] >> 5 & 1;\n    bfd_map_over_sections(param_1,FUN_000160d0,local_b4);\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) goto LAB_00017807;\n  }\n  if (DAT_000710ec != 0) {\n    FUN_000457f0(*(undefined4 *)PTR_stdout_0006ffdc,param_1,1,0);\n  }\n  if (DAT_00071100 != 0) {\n    uVar2 = bfd_get_mach(param_1);\n    uVar7 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar7,uVar2);\n    pcVar6 = (char *)dcgettext(0,"architecture: %s, ",5);\n    printf(pcVar6,uVar2);\n    uVar9 = param_1[10];\n    pcVar6 = (char *)dcgettext(0,"flags 0x%08x:\n",5);\n    printf(pcVar6,uVar9 >> 5 & 0x3ff);\n    pcVar6 = "";\n    uVar9 = (uint)param_1[10] >> 5;\n    if ((uVar9 & 1) != 0) {\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 2) != 0) {\n      printf("%s%s",pcVar6,"EXEC_P");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 4) != 0) {\n      printf("%s%s",pcVar6,"HAS_LINENO");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 8) != 0) {\n      printf("%s%s",pcVar6,"HAS_DEBUG");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x10) != 0) {\n      printf("%s%s",pcVar6,"HAS_SYMS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x20) != 0) {\n      printf("%s%s",pcVar6,"HAS_LOCALS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x40) != 0) {\n      printf("%s%s",pcVar6,"DYNAMIC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x80) != 0) {\n      printf("%s%s",pcVar6,"WP_TEXT");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x100) != 0) {\n      printf("%s%s",pcVar6,"D_PAGED");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x200) != 0) {\n      printf("%s%s",pcVar6,"BFD_IS_RELAXABLE");\n    }\n    pcVar6 = (char *)dcgettext(0,"\nstart address 0x",5);\n    printf(pcVar6);\n    bfd_fprintf_vma(param_1,*(undefined4 *)PTR_stdout_0006ffdc,param_1[0x1c]);\n    putchar(10);\n  }\n  if (DAT_000710e8 != 0) {\n    (**(code **)(param_1[1] + 0xc4))(param_1,*(undefined4 *)PTR_stdout_0006ffdc);\n  }\n  if (DAT_000710e4 != 0) {\n    uVar2 = dcgettext(0,"option -P/--private not supported by this file",5);\n    FUN_000451b0(uVar2);\n  }\n  if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\n    putc(10,*(FILE **)PTR_stdout_0006ffdc);\n  }\n  pvVar10 = DAT_0007106c;\n  if ((((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0) || DAT_000710ac != 0) ||\n      DAT_000710d0 != 0) {\n    if ((*(byte *)((int)param_1 + 0x29) & 2) == 0) {\n      DAT_00071068 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);\n      if (iVar3 < 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    \n        FUN_000450f0(uVar2);\n      }\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);\n      if (DAT_00071068 < 0) goto LAB_00017bfe;\n    }\n  }\n  DAT_0007106c = pvVar10;\n  if (DAT_00071104 != 0) {\n    local_b4[0] = 0xd;\n    pcVar6 = (char *)dcgettext(0,"Sections:\n",5);\n    printf(pcVar6);\n    if (DAT_000710b4 != 0) {\n      bfd_map_over_sections(param_1,FUN_00016d60,local_b4);\n    }\n    uVar9 = local_b4[0];\n    pcVar6 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);\n    printf(pcVar6,uVar9,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);\n    if (DAT_000710b4 != 0) {\n      pcVar6 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar6);\n    }\n    putchar(10);\n    bfd_map_over_sections(param_1,FUN_00016160,local_b4);\n  }\n  if (DAT_000710f8 == 0 && DAT_000710f0 == 0) {\n    if (DAT_000710c4 != 0) {\n      iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n      pvVar10 = DAT_0007105c;\n      if (0 < iVar3) goto LAB_000170fd;\n      goto LAB_00017145;\n    }\n  }\n  else {\nLAB_000170fd:\n    iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n    if (iVar3 < 0) {\n      uVar2 = *param_1;\n      if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {\n                    \n        FUN_000450f0(uVar2);\n      }\n      uVar7 = dcgettext(0,"%s: not a dynamic object",5);\n      FUN_000451b0(uVar7,uVar2);\n      DAT_00071110 = 1;\n      DAT_00071050 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);\n      if (DAT_00071050 < 0) goto LAB_00017bfe;\n    }\nLAB_00017145:\n    DAT_0007105c = pvVar10;\n    if ((DAT_000710c4 != 0) &&\n       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0)) {\n      DAT_00071054 = 0;\n    }\n  }\n  if (DAT_000710fc != 0) {\n    FUN_00016db0();\n  }\n  if (DAT_000710f8 != 0) {\n    FUN_00016db0();\n  }\n  if (DAT_000710d0 != 0) {\n    FUN_00015f30();\n  }\n  if (DAT_000710cc != 0) {\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n  }\n  if (DAT_000710f4 == 0) {\nLAB_00017355:\n    if (DAT_000710f0 != 0) {\n      if (DAT_000710c4 != 0) goto LAB_00017371;\n      iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n      if (iVar3 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (iVar3 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }\n    }\nLAB_000171f0:\n    if (DAT_00071108 != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(param_1,FUN_00016840,0);\n    }\n    if (DAT_000710c4 == 0) goto joined_r0x0001721a;\n  }\n  else {\n    if (DAT_000710c4 == 0) {\n      bfd_map_over_sections(param_1,FUN_00018570,0);\n      goto LAB_00017355;\n    }\n    if (DAT_000710f0 == 0) goto LAB_000171f0;\nLAB_00017371:\n    if (DAT_00071108 != 0) goto LAB_00017ac0;\n  }\n  DAT_0007102c = 0;\n  DAT_00071038 = 0;\n  DAT_00071034 = 0xffffffff;\n  DAT_00071060 = DAT_00071068;\n  if (DAT_00071068 == 0) {\n    DAT_00071060 = DAT_00071050;\n  }\n  DAT_00071030 = 0;\n  __dest = (int *)xmalloc((DAT_00071060 + DAT_00071054) * 4);\n  local_e8 = DAT_00071060;\n  pvVar10 = DAT_0007106c;\n  if (DAT_00071068 == 0) {\n    pvVar10 = DAT_0007105c;\n  }\n  DAT_00071064 = __dest;\n  memcpy(__dest,pvVar10,DAT_00071060 << 2);\n  puVar4 = PTR__bfd_std_section_0006ffd8 + 0xa8;\n  local_f0 = __dest;\n  local_ec = __dest;\nLAB_00017428:\n  local_e8 = local_e8 + -1;\n  if (-1 < local_e8) {\n    while( true ) {\n      piVar1 = local_f0 + 1;\n      iVar3 = *local_f0;\n      pbVar12 = *(byte **)(iVar3 + 4);\n      local_f0 = piVar1;\n      if ((pbVar12 == (byte *)0x0) || (*pbVar12 == 0)) break;\n      bVar16 = false;\n      bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0;\n      if (!bVar18) {\n        iVar8 = 4;\n        pbVar11 = pbVar12;\n        pbVar14 = &DAT_0004c8bd;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);\n        bVar17 = false;\n        bVar16 = (!bVar16 && !bVar18) == bVar16;\n        if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }\n      }\n      if ((*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)) break;\n      *local_ec = iVar3;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }\n    goto LAB_00017428;\n  }\nLAB_000174ab:\n  DAT_00071060 = (int)local_ec - (int)__dest >> 2;\n  if (0 < DAT_00071054) {\n    DAT_00071060 = DAT_00071060 + DAT_00071054;\n    pvVar10 = DAT_00071058;\n    do {\n      *local_ec = (int)pvVar10;\n      local_ec = local_ec + 1;\n      pvVar10 = (void *)((int)pvVar10 + 0x18);\n    } while (__dest + DAT_00071060 != local_ec);\n  }\n  qsort(__dest,DAT_00071060,4,FUN_00015990);\n  init_disassemble_info(local_b4,*(undefined4 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0);\n  local_ac = local_d0;\n  local_68 = FUN_000153c0;\n  local_64 = FUN_00014c20;\n  local_c8 = 0;\n  local_c4 = (void *)0x0;\n  local_c0 = 0;\n  local_b8 = 0;\n  local_d0[0] = param_1;\n  if (DAT_00071074 != 0) {\n    iVar8 = bfd_scan_arch(DAT_00071074);\n    iVar3 = DAT_00071074;\n    if (iVar8 == 0) {\n      uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    \n      FUN_00045180(uVar2,iVar3);\n    }\n    param_1[0x20] = iVar8;\n  }\n  if (DAT_00070228 != 2) {\n    puVar5 = (undefined4 *)xmalloc(0x1c4);\n    puVar13 = (undefined4 *)param_1[1];\n    iVar3 = (int)puVar5 - (int)((uint)(puVar5 + 1) & 0xfffffffc);\n    *puVar5 = *puVar13;\n    puVar5[0x70] = puVar13[0x70];\n    puVar13 = (undefined4 *)((int)puVar13 - iVar3);\n    puVar15 = (undefined4 *)((uint)(puVar5 + 1) & 0xfffffffc);\n    for (uVar9 = iVar3 + 0x1c4U >> 2; uVar9 != 0; uVar9 = uVar9 - 1) {\n      *puVar15 = *puVar13;\n      puVar13 = puVar13 + (uint)bVar19 * -2 + 1;\n      puVar15 = puVar15 + (uint)bVar19 * -2 + 1;\n    }\n    param_1[1] = puVar5;\n    puVar5[2] = DAT_00070228;\n  }\n  uVar2 = bfd_get_mach(param_1);\n  iVar3 = *(int *)(param_1[1] + 8);\n  uVar7 = bfd_get_arch(param_1);\n  local_bc = disassembler(uVar7,iVar3 == 0,uVar2,param_1);\n  if (local_bc == 0) {\n    uVar2 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar2,0);\n    uVar7 = dcgettext(0,"can\'t disassemble for architecture %s\n",5);\n    FUN_000451b0(uVar7,uVar2);\n    DAT_00071110 = 1;\n  }\n  else {\n    local_a8 = *(undefined4 *)(param_1[1] + 4);\n    local_a4 = bfd_get_arch(param_1);\n    local_a0 = bfd_get_mach(param_1);\n    local_24 = DAT_00071070;\n    local_44 = bfd_octets_per_byte(param_1);\n    local_40 = 8;\n    local_3c = 3;\n    local_38 = 0;\n    if (*(int *)(param_1[1] + 8) == 0) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (*(int *)(param_1[1] + 8) == 1) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }\n    disassemble_init_for_target(local_b4);\n    iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n    if (iVar3 < 0) {\n      if (DAT_000710f0 != 0) {\nLAB_00017bfe:\n                    \n        FUN_000450f0(*param_1);\n      }\n    }\n    else if (iVar3 != 0) {\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }\n    local_84 = DAT_00071064;\n    local_7c = DAT_00071060;\n    bfd_map_over_sections(param_1,FUN_00018770,local_b4);\n    if (local_c4 != (void *)0x0) {\n      free(local_c4);\n    }\n    free(DAT_00071064);\n  }\njoined_r0x0001721a:\n  if (DAT_000710ac != 0) {\n    iVar3 = FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1);\n    if (iVar3 == 0) {\n      if (DAT_000710d0 == 0) {\n        FUN_00034950();\n        FUN_00015f30();\n      }\n    }\n    else {\n      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);\n      if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }\n    }\n  }\n  if (DAT_0007106c != (void *)0x0) {\n    free(DAT_0007106c);\n    DAT_0007106c = (void *)0x0;\n  }\n  if (DAT_0007105c != (void *)0x0) {\n    free(DAT_0007105c);\n    DAT_0007105c = (void *)0x0;\n  }\n  if (DAT_00071058 != (void *)0x0) {\n    free(DAT_00071058);\n    DAT_00071058 = (void *)0x0;\n  }\n  DAT_00071068 = 0;\n  DAT_00071050 = 0;\n  DAT_00071054 = 0;\n  return;\n}" (primitive_type "void") (ERROR "__regparm3" (identifier "__regparm3")) (function_declarator "FUN_00016fd0(undefined4 *param_1)" (identifier "FUN_00016fd0") (parameter_list "(undefined4 *param_1)" (( "(") (parameter_declaration "undefined4 *param_1" (type_identifier "undefined4") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) () ")"))) (compound_statement "{\n  int *piVar1;\n  undefined4 uVar2;\n  int iVar3;\n  int *__dest;\n  undefined *puVar4;\n  undefined4 *puVar5;\n  char *pcVar6;\n  undefined4 uVar7;\n  int iVar8;\n  uint uVar9;\n  void *pvVar10;\n  byte *pbVar11;\n  byte *pbVar12;\n  undefined4 *puVar13;\n  byte *pbVar14;\n  undefined4 *puVar15;\n  bool bVar16;\n  bool bVar17;\n  bool bVar18;\n  byte bVar19;\n  int *local_f0;\n  int *local_ec;\n  int local_e8;\n  undefined4 *local_d0 [2];\n  undefined4 local_c8;\n  void *local_c4;\n  size_t local_c0;\n  int local_bc;\n  undefined4 local_b8;\n  uint local_b4 [2];\n  undefined4 **local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  undefined4 local_a0;\n  undefined4 local_9c;\n  int *local_84;\n  size_t local_7c;\n  code *local_68;\n  code *local_64;\n  undefined4 local_48;\n  undefined4 local_44;\n  undefined4 local_40;\n  undefined4 local_3c;\n  undefined4 local_38;\n  undefined4 local_24;\n  undefined4 uStack_14;\n  \n  bVar19 = 0;\n  uStack_14 = 0x16fdb;\n  if (DAT_0007109c == 0) {\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\nLAB_00017807:\n      uVar2 = *param_1;\n      uVar7 = *(undefined4 *)param_1[1];\n      pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(pcVar6,uVar2,uVar7);\n    }\n  }\n  else {\n    local_b4[0] = (uint)param_1[10] >> 5 & 1;\n    bfd_map_over_sections(param_1,FUN_000160d0,local_b4);\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) goto LAB_00017807;\n  }\n  if (DAT_000710ec != 0) {\n    FUN_000457f0(*(undefined4 *)PTR_stdout_0006ffdc,param_1,1,0);\n  }\n  if (DAT_00071100 != 0) {\n    uVar2 = bfd_get_mach(param_1);\n    uVar7 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar7,uVar2);\n    pcVar6 = (char *)dcgettext(0,"architecture: %s, ",5);\n    printf(pcVar6,uVar2);\n    uVar9 = param_1[10];\n    pcVar6 = (char *)dcgettext(0,"flags 0x%08x:\n",5);\n    printf(pcVar6,uVar9 >> 5 & 0x3ff);\n    pcVar6 = "";\n    uVar9 = (uint)param_1[10] >> 5;\n    if ((uVar9 & 1) != 0) {\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 2) != 0) {\n      printf("%s%s",pcVar6,"EXEC_P");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 4) != 0) {\n      printf("%s%s",pcVar6,"HAS_LINENO");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 8) != 0) {\n      printf("%s%s",pcVar6,"HAS_DEBUG");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x10) != 0) {\n      printf("%s%s",pcVar6,"HAS_SYMS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x20) != 0) {\n      printf("%s%s",pcVar6,"HAS_LOCALS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x40) != 0) {\n      printf("%s%s",pcVar6,"DYNAMIC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x80) != 0) {\n      printf("%s%s",pcVar6,"WP_TEXT");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x100) != 0) {\n      printf("%s%s",pcVar6,"D_PAGED");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x200) != 0) {\n      printf("%s%s",pcVar6,"BFD_IS_RELAXABLE");\n    }\n    pcVar6 = (char *)dcgettext(0,"\nstart address 0x",5);\n    printf(pcVar6);\n    bfd_fprintf_vma(param_1,*(undefined4 *)PTR_stdout_0006ffdc,param_1[0x1c]);\n    putchar(10);\n  }\n  if (DAT_000710e8 != 0) {\n    (**(code **)(param_1[1] + 0xc4))(param_1,*(undefined4 *)PTR_stdout_0006ffdc);\n  }\n  if (DAT_000710e4 != 0) {\n    uVar2 = dcgettext(0,"option -P/--private not supported by this file",5);\n    FUN_000451b0(uVar2);\n  }\n  if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\n    putc(10,*(FILE **)PTR_stdout_0006ffdc);\n  }\n  pvVar10 = DAT_0007106c;\n  if ((((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0) || DAT_000710ac != 0) ||\n      DAT_000710d0 != 0) {\n    if ((*(byte *)((int)param_1 + 0x29) & 2) == 0) {\n      DAT_00071068 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);\n      if (iVar3 < 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    \n        FUN_000450f0(uVar2);\n      }\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);\n      if (DAT_00071068 < 0) goto LAB_00017bfe;\n    }\n  }\n  DAT_0007106c = pvVar10;\n  if (DAT_00071104 != 0) {\n    local_b4[0] = 0xd;\n    pcVar6 = (char *)dcgettext(0,"Sections:\n",5);\n    printf(pcVar6);\n    if (DAT_000710b4 != 0) {\n      bfd_map_over_sections(param_1,FUN_00016d60,local_b4);\n    }\n    uVar9 = local_b4[0];\n    pcVar6 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);\n    printf(pcVar6,uVar9,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);\n    if (DAT_000710b4 != 0) {\n      pcVar6 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar6);\n    }\n    putchar(10);\n    bfd_map_over_sections(param_1,FUN_00016160,local_b4);\n  }\n  if (DAT_000710f8 == 0 && DAT_000710f0 == 0) {\n    if (DAT_000710c4 != 0) {\n      iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n      pvVar10 = DAT_0007105c;\n      if (0 < iVar3) goto LAB_000170fd;\n      goto LAB_00017145;\n    }\n  }\n  else {\nLAB_000170fd:\n    iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n    if (iVar3 < 0) {\n      uVar2 = *param_1;\n      if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {\n                    \n        FUN_000450f0(uVar2);\n      }\n      uVar7 = dcgettext(0,"%s: not a dynamic object",5);\n      FUN_000451b0(uVar7,uVar2);\n      DAT_00071110 = 1;\n      DAT_00071050 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);\n      if (DAT_00071050 < 0) goto LAB_00017bfe;\n    }\nLAB_00017145:\n    DAT_0007105c = pvVar10;\n    if ((DAT_000710c4 != 0) &&\n       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0)) {\n      DAT_00071054 = 0;\n    }\n  }\n  if (DAT_000710fc != 0) {\n    FUN_00016db0();\n  }\n  if (DAT_000710f8 != 0) {\n    FUN_00016db0();\n  }\n  if (DAT_000710d0 != 0) {\n    FUN_00015f30();\n  }\n  if (DAT_000710cc != 0) {\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n  }\n  if (DAT_000710f4 == 0) {\nLAB_00017355:\n    if (DAT_000710f0 != 0) {\n      if (DAT_000710c4 != 0) goto LAB_00017371;\n      iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n      if (iVar3 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (iVar3 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }\n    }\nLAB_000171f0:\n    if (DAT_00071108 != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(param_1,FUN_00016840,0);\n    }\n    if (DAT_000710c4 == 0) goto joined_r0x0001721a;\n  }\n  else {\n    if (DAT_000710c4 == 0) {\n      bfd_map_over_sections(param_1,FUN_00018570,0);\n      goto LAB_00017355;\n    }\n    if (DAT_000710f0 == 0) goto LAB_000171f0;\nLAB_00017371:\n    if (DAT_00071108 != 0) goto LAB_00017ac0;\n  }\n  DAT_0007102c = 0;\n  DAT_00071038 = 0;\n  DAT_00071034 = 0xffffffff;\n  DAT_00071060 = DAT_00071068;\n  if (DAT_00071068 == 0) {\n    DAT_00071060 = DAT_00071050;\n  }\n  DAT_00071030 = 0;\n  __dest = (int *)xmalloc((DAT_00071060 + DAT_00071054) * 4);\n  local_e8 = DAT_00071060;\n  pvVar10 = DAT_0007106c;\n  if (DAT_00071068 == 0) {\n    pvVar10 = DAT_0007105c;\n  }\n  DAT_00071064 = __dest;\n  memcpy(__dest,pvVar10,DAT_00071060 << 2);\n  puVar4 = PTR__bfd_std_section_0006ffd8 + 0xa8;\n  local_f0 = __dest;\n  local_ec = __dest;\nLAB_00017428:\n  local_e8 = local_e8 + -1;\n  if (-1 < local_e8) {\n    while( true ) {\n      piVar1 = local_f0 + 1;\n      iVar3 = *local_f0;\n      pbVar12 = *(byte **)(iVar3 + 4);\n      local_f0 = piVar1;\n      if ((pbVar12 == (byte *)0x0) || (*pbVar12 == 0)) break;\n      bVar16 = false;\n      bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0;\n      if (!bVar18) {\n        iVar8 = 4;\n        pbVar11 = pbVar12;\n        pbVar14 = &DAT_0004c8bd;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);\n        bVar17 = false;\n        bVar16 = (!bVar16 && !bVar18) == bVar16;\n        if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }\n      }\n      if ((*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)) break;\n      *local_ec = iVar3;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }\n    goto LAB_00017428;\n  }\nLAB_000174ab:\n  DAT_00071060 = (int)local_ec - (int)__dest >> 2;\n  if (0 < DAT_00071054) {\n    DAT_00071060 = DAT_00071060 + DAT_00071054;\n    pvVar10 = DAT_00071058;\n    do {\n      *local_ec = (int)pvVar10;\n      local_ec = local_ec + 1;\n      pvVar10 = (void *)((int)pvVar10 + 0x18);\n    } while (__dest + DAT_00071060 != local_ec);\n  }\n  qsort(__dest,DAT_00071060,4,FUN_00015990);\n  init_disassemble_info(local_b4,*(undefined4 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0);\n  local_ac = local_d0;\n  local_68 = FUN_000153c0;\n  local_64 = FUN_00014c20;\n  local_c8 = 0;\n  local_c4 = (void *)0x0;\n  local_c0 = 0;\n  local_b8 = 0;\n  local_d0[0] = param_1;\n  if (DAT_00071074 != 0) {\n    iVar8 = bfd_scan_arch(DAT_00071074);\n    iVar3 = DAT_00071074;\n    if (iVar8 == 0) {\n      uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    \n      FUN_00045180(uVar2,iVar3);\n    }\n    param_1[0x20] = iVar8;\n  }\n  if (DAT_00070228 != 2) {\n    puVar5 = (undefined4 *)xmalloc(0x1c4);\n    puVar13 = (undefined4 *)param_1[1];\n    iVar3 = (int)puVar5 - (int)((uint)(puVar5 + 1) & 0xfffffffc);\n    *puVar5 = *puVar13;\n    puVar5[0x70] = puVar13[0x70];\n    puVar13 = (undefined4 *)((int)puVar13 - iVar3);\n    puVar15 = (undefined4 *)((uint)(puVar5 + 1) & 0xfffffffc);\n    for (uVar9 = iVar3 + 0x1c4U >> 2; uVar9 != 0; uVar9 = uVar9 - 1) {\n      *puVar15 = *puVar13;\n      puVar13 = puVar13 + (uint)bVar19 * -2 + 1;\n      puVar15 = puVar15 + (uint)bVar19 * -2 + 1;\n    }\n    param_1[1] = puVar5;\n    puVar5[2] = DAT_00070228;\n  }\n  uVar2 = bfd_get_mach(param_1);\n  iVar3 = *(int *)(param_1[1] + 8);\n  uVar7 = bfd_get_arch(param_1);\n  local_bc = disassembler(uVar7,iVar3 == 0,uVar2,param_1);\n  if (local_bc == 0) {\n    uVar2 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar2,0);\n    uVar7 = dcgettext(0,"can\'t disassemble for architecture %s\n",5);\n    FUN_000451b0(uVar7,uVar2);\n    DAT_00071110 = 1;\n  }\n  else {\n    local_a8 = *(undefined4 *)(param_1[1] + 4);\n    local_a4 = bfd_get_arch(param_1);\n    local_a0 = bfd_get_mach(param_1);\n    local_24 = DAT_00071070;\n    local_44 = bfd_octets_per_byte(param_1);\n    local_40 = 8;\n    local_3c = 3;\n    local_38 = 0;\n    if (*(int *)(param_1[1] + 8) == 0) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (*(int *)(param_1[1] + 8) == 1) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }\n    disassemble_init_for_target(local_b4);\n    iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n    if (iVar3 < 0) {\n      if (DAT_000710f0 != 0) {\nLAB_00017bfe:\n                    \n        FUN_000450f0(*param_1);\n      }\n    }\n    else if (iVar3 != 0) {\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }\n    local_84 = DAT_00071064;\n    local_7c = DAT_00071060;\n    bfd_map_over_sections(param_1,FUN_00018770,local_b4);\n    if (local_c4 != (void *)0x0) {\n      free(local_c4);\n    }\n    free(DAT_00071064);\n  }\njoined_r0x0001721a:\n  if (DAT_000710ac != 0) {\n    iVar3 = FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1);\n    if (iVar3 == 0) {\n      if (DAT_000710d0 == 0) {\n        FUN_00034950();\n        FUN_00015f30();\n      }\n    }\n    else {\n      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);\n      if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }\n    }\n  }\n  if (DAT_0007106c != (void *)0x0) {\n    free(DAT_0007106c);\n    DAT_0007106c = (void *)0x0;\n  }\n  if (DAT_0007105c != (void *)0x0) {\n    free(DAT_0007105c);\n    DAT_0007105c = (void *)0x0;\n  }\n  if (DAT_00071058 != (void *)0x0) {\n    free(DAT_00071058);\n    DAT_00071058 = (void *)0x0;\n  }\n  DAT_00071068 = 0;\n  DAT_00071050 = 0;\n  DAT_00071054 = 0;\n  return;\n}" ({ "{") (declaration "int *piVar1;" (primitive_type "int") (pointer_declarator "*piVar1" (* "*") (identifier "piVar1")) (; ";")) (declaration "undefined4 uVar2;" (type_identifier "undefined4") (identifier "uVar2") (; ";")) (declaration "int iVar3;" (primitive_type "int") (identifier "iVar3") (; ";")) (declaration "int *__dest;" (primitive_type "int") (pointer_declarator "*__dest" (* "*") (identifier "__dest")) (; ";")) (declaration "undefined *puVar4;" (type_identifier "undefined") (pointer_declarator "*puVar4" (* "*") (identifier "puVar4")) (; ";")) (declaration "undefined4 *puVar5;" (type_identifier "undefined4") (pointer_declarator "*puVar5" (* "*") (identifier "puVar5")) (; ";")) (declaration "char *pcVar6;" (primitive_type "char") (pointer_declarator "*pcVar6" (* "*") (identifier "pcVar6")) (; ";")) (declaration "undefined4 uVar7;" (type_identifier "undefined4") (identifier "uVar7") (; ";")) (declaration "int iVar8;" (primitive_type "int") (identifier "iVar8") (; ";")) (declaration "uint uVar9;" (type_identifier "uint") (identifier "uVar9") (; ";")) (declaration "void *pvVar10;" (primitive_type "void") (pointer_declarator "*pvVar10" (* "*") (identifier "pvVar10")) (; ";")) (declaration "byte *pbVar11;" (type_identifier "byte") (pointer_declarator "*pbVar11" (* "*") (identifier "pbVar11")) (; ";")) (declaration "byte *pbVar12;" (type_identifier "byte") (pointer_declarator "*pbVar12" (* "*") (identifier "pbVar12")) (; ";")) (declaration "undefined4 *puVar13;" (type_identifier "undefined4") (pointer_declarator "*puVar13" (* "*") (identifier "puVar13")) (; ";")) (declaration "byte *pbVar14;" (type_identifier "byte") (pointer_declarator "*pbVar14" (* "*") (identifier "pbVar14")) (; ";")) (declaration "undefined4 *puVar15;" (type_identifier "undefined4") (pointer_declarator "*puVar15" (* "*") (identifier "puVar15")) (; ";")) (declaration "bool bVar16;" (primitive_type "bool") (identifier "bVar16") (; ";")) (declaration "bool bVar17;" (primitive_type "bool") (identifier "bVar17") (; ";")) (declaration "bool bVar18;" (primitive_type "bool") (identifier "bVar18") (; ";")) (declaration "byte bVar19;" (type_identifier "byte") (identifier "bVar19") (; ";")) (declaration "int *local_f0;" (primitive_type "int") (pointer_declarator "*local_f0" (* "*") (identifier "local_f0")) (; ";")) (declaration "int *local_ec;" (primitive_type "int") (pointer_declarator "*local_ec" (* "*") (identifier "local_ec")) (; ";")) (declaration "int local_e8;" (primitive_type "int") (identifier "local_e8") (; ";")) (declaration "undefined4 *local_d0 [2];" (type_identifier "undefined4") (pointer_declarator "*local_d0 [2]" (* "*") (array_declarator "local_d0 [2]" (identifier "local_d0") ([ "[") (number_literal "2") (] "]"))) (; ";")) (declaration "undefined4 local_c8;" (type_identifier "undefined4") (identifier "local_c8") (; ";")) (declaration "void *local_c4;" (primitive_type "void") (pointer_declarator "*local_c4" (* "*") (identifier "local_c4")) (; ";")) (declaration "size_t local_c0;" (primitive_type "size_t") (identifier "local_c0") (; ";")) (declaration "int local_bc;" (primitive_type "int") (identifier "local_bc") (; ";")) (declaration "undefined4 local_b8;" (type_identifier "undefined4") (identifier "local_b8") (; ";")) (declaration "uint local_b4 [2];" (type_identifier "uint") (array_declarator "local_b4 [2]" (identifier "local_b4") ([ "[") (number_literal "2") (] "]")) (; ";")) (declaration "undefined4 **local_ac;" (type_identifier "undefined4") (pointer_declarator "**local_ac" (* "*") (pointer_declarator "*local_ac" (* "*") (identifier "local_ac"))) (; ";")) (declaration "undefined4 local_a8;" (type_identifier "undefined4") (identifier "local_a8") (; ";")) (declaration "undefined4 local_a4;" (type_identifier "undefined4") (identifier "local_a4") (; ";")) (declaration "undefined4 local_a0;" (type_identifier "undefined4") (identifier "local_a0") (; ";")) (declaration "undefined4 local_9c;" (type_identifier "undefined4") (identifier "local_9c") (; ";")) (declaration "int *local_84;" (primitive_type "int") (pointer_declarator "*local_84" (* "*") (identifier "local_84")) (; ";")) (declaration "size_t local_7c;" (primitive_type "size_t") (identifier "local_7c") (; ";")) (declaration "code *local_68;" (type_identifier "code") (pointer_declarator "*local_68" (* "*") (identifier "local_68")) (; ";")) (declaration "code *local_64;" (type_identifier "code") (pointer_declarator "*local_64" (* "*") (identifier "local_64")) (; ";")) (declaration "undefined4 local_48;" (type_identifier "undefined4") (identifier "local_48") (; ";")) (declaration "undefined4 local_44;" (type_identifier "undefined4") (identifier "local_44") (; ";")) (declaration "undefined4 local_40;" (type_identifier "undefined4") (identifier "local_40") (; ";")) (declaration "undefined4 local_3c;" (type_identifier "undefined4") (identifier "local_3c") (; ";")) (declaration "undefined4 local_38;" (type_identifier "undefined4") (identifier "local_38") (; ";")) (declaration "undefined4 local_24;" (type_identifier "undefined4") (identifier "local_24") (; ";")) (declaration "undefined4 uStack_14;" (type_identifier "undefined4") (identifier "uStack_14") (; ";")) (expression_statement "bVar19 = 0;" (assignment_expression "bVar19 = 0" (identifier "bVar19") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_14 = 0x16fdb;" (assignment_expression "uStack_14 = 0x16fdb" (identifier "uStack_14") (= "=") (number_literal "0x16fdb")) (; ";")) (if_statement "if (DAT_0007109c == 0) {\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\nLAB_00017807:\n      uVar2 = *param_1;\n      uVar7 = *(undefined4 *)param_1[1];\n      pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(pcVar6,uVar2,uVar7);\n    }\n  }\n  else {\n    local_b4[0] = (uint)param_1[10] >> 5 & 1;\n    bfd_map_over_sections(param_1,FUN_000160d0,local_b4);\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) goto LAB_00017807;\n  }" (if "if") (parenthesized_expression "(DAT_0007109c == 0)" (( "(") (binary_expression "DAT_0007109c == 0" (identifier "DAT_0007109c") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\nLAB_00017807:\n      uVar2 = *param_1;\n      uVar7 = *(undefined4 *)param_1[1];\n      pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(pcVar6,uVar2,uVar7);\n    }\n  }" ({ "{") (if_statement "if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\nLAB_00017807:\n      uVar2 = *param_1;\n      uVar7 = *(undefined4 *)param_1[1];\n      pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(pcVar6,uVar2,uVar7);\n    }" (if "if") (parenthesized_expression "(DAT_000710a8 == 0 && DAT_000710a4 == 0)" (( "(") (binary_expression "DAT_000710a8 == 0 && DAT_000710a4 == 0" (binary_expression "DAT_000710a8 == 0" (identifier "DAT_000710a8") (== "==") (number_literal "0")) (&& "&&") (binary_expression "DAT_000710a4 == 0" (identifier "DAT_000710a4") (== "==") (number_literal "0"))) () ")")) (compound_statement "{\nLAB_00017807:\n      uVar2 = *param_1;\n      uVar7 = *(undefined4 *)param_1[1];\n      pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5);\n      printf(pcVar6,uVar2,uVar7);\n    }" ({ "{") (labeled_statement "LAB_00017807:\n      uVar2 = *param_1;" (statement_identifier "LAB_00017807") (: ":") (expression_statement "uVar2 = *param_1;" (assignment_expression "uVar2 = *param_1" (identifier "uVar2") (= "=") (pointer_expression "*param_1" (* "*") (identifier "param_1"))) (; ";"))) (expression_statement "uVar7 = *(undefined4 *)param_1[1];" (assignment_expression "uVar7 = *(undefined4 *)param_1[1]" (identifier "uVar7") (= "=") (pointer_expression "*(undefined4 *)param_1[1]" (* "*") (cast_expression "(undefined4 *)param_1[1]" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]"))))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"\n%s:     file format %s\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"\n%s:     file format %s\n",5)" (identifier "dcgettext") (argument_list "(0,"\n%s:     file format %s\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""\n%s:     file format %s\n"" (" """) (escape_sequence "\n") (string_content "%s:     file format %s") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6,uVar2,uVar7);" (call_expression "printf(pcVar6,uVar2,uVar7)" (identifier "printf") (argument_list "(pcVar6,uVar2,uVar7)" (( "(") (identifier "pcVar6") (, ",") (identifier "uVar2") (, ",") (identifier "uVar7") () ")"))) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n    local_b4[0] = (uint)param_1[10] >> 5 & 1;\n    bfd_map_over_sections(param_1,FUN_000160d0,local_b4);\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) goto LAB_00017807;\n  }" (else "else") (compound_statement "{\n    local_b4[0] = (uint)param_1[10] >> 5 & 1;\n    bfd_map_over_sections(param_1,FUN_000160d0,local_b4);\n    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) goto LAB_00017807;\n  }" ({ "{") (expression_statement "local_b4[0] = (uint)param_1[10] >> 5 & 1;" (assignment_expression "local_b4[0] = (uint)param_1[10] >> 5 & 1" (subscript_expression "local_b4[0]" (identifier "local_b4") ([ "[") (number_literal "0") (] "]")) (= "=") (binary_expression "(uint)param_1[10] >> 5 & 1" (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_1[10]" (identifier "param_1") ([ "[") (number_literal "10") (] "]"))) (>> ">>") (number_literal "5")) (& "&") (number_literal "1"))) (; ";")) (expression_statement "bfd_map_over_sections(param_1,FUN_000160d0,local_b4);" (call_expression "bfd_map_over_sections(param_1,FUN_000160d0,local_b4)" (identifier "bfd_map_over_sections") (argument_list "(param_1,FUN_000160d0,local_b4)" (( "(") (identifier "param_1") (, ",") (identifier "FUN_000160d0") (, ",") (identifier "local_b4") () ")"))) (; ";")) (if_statement "if (DAT_000710a8 == 0 && DAT_000710a4 == 0) goto LAB_00017807;" (if "if") (parenthesized_expression "(DAT_000710a8 == 0 && DAT_000710a4 == 0)" (( "(") (binary_expression "DAT_000710a8 == 0 && DAT_000710a4 == 0" (binary_expression "DAT_000710a8 == 0" (identifier "DAT_000710a8") (== "==") (number_literal "0")) (&& "&&") (binary_expression "DAT_000710a4 == 0" (identifier "DAT_000710a4") (== "==") (number_literal "0"))) () ")")) (goto_statement "goto LAB_00017807;" (goto "goto") (statement_identifier "LAB_00017807") (; ";"))) (} "}")))) (if_statement "if (DAT_000710ec != 0) {\n    FUN_000457f0(*(undefined4 *)PTR_stdout_0006ffdc,param_1,1,0);\n  }" (if "if") (parenthesized_expression "(DAT_000710ec != 0)" (( "(") (binary_expression "DAT_000710ec != 0" (identifier "DAT_000710ec") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    FUN_000457f0(*(undefined4 *)PTR_stdout_0006ffdc,param_1,1,0);\n  }" ({ "{") (expression_statement "FUN_000457f0(*(undefined4 *)PTR_stdout_0006ffdc,param_1,1,0);" (call_expression "FUN_000457f0(*(undefined4 *)PTR_stdout_0006ffdc,param_1,1,0)" (identifier "FUN_000457f0") (argument_list "(*(undefined4 *)PTR_stdout_0006ffdc,param_1,1,0)" (( "(") (pointer_expression "*(undefined4 *)PTR_stdout_0006ffdc" (* "*") (cast_expression "(undefined4 *)PTR_stdout_0006ffdc" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_stdout_0006ffdc"))) (, ",") (identifier "param_1") (, ",") (number_literal "1") (, ",") (number_literal "0") () ")"))) (; ";")) (} "}"))) (if_statement "if (DAT_00071100 != 0) {\n    uVar2 = bfd_get_mach(param_1);\n    uVar7 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar7,uVar2);\n    pcVar6 = (char *)dcgettext(0,"architecture: %s, ",5);\n    printf(pcVar6,uVar2);\n    uVar9 = param_1[10];\n    pcVar6 = (char *)dcgettext(0,"flags 0x%08x:\n",5);\n    printf(pcVar6,uVar9 >> 5 & 0x3ff);\n    pcVar6 = "";\n    uVar9 = (uint)param_1[10] >> 5;\n    if ((uVar9 & 1) != 0) {\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 2) != 0) {\n      printf("%s%s",pcVar6,"EXEC_P");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 4) != 0) {\n      printf("%s%s",pcVar6,"HAS_LINENO");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 8) != 0) {\n      printf("%s%s",pcVar6,"HAS_DEBUG");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x10) != 0) {\n      printf("%s%s",pcVar6,"HAS_SYMS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x20) != 0) {\n      printf("%s%s",pcVar6,"HAS_LOCALS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x40) != 0) {\n      printf("%s%s",pcVar6,"DYNAMIC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x80) != 0) {\n      printf("%s%s",pcVar6,"WP_TEXT");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x100) != 0) {\n      printf("%s%s",pcVar6,"D_PAGED");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x200) != 0) {\n      printf("%s%s",pcVar6,"BFD_IS_RELAXABLE");\n    }\n    pcVar6 = (char *)dcgettext(0,"\nstart address 0x",5);\n    printf(pcVar6);\n    bfd_fprintf_vma(param_1,*(undefined4 *)PTR_stdout_0006ffdc,param_1[0x1c]);\n    putchar(10);\n  }" (if "if") (parenthesized_expression "(DAT_00071100 != 0)" (( "(") (binary_expression "DAT_00071100 != 0" (identifier "DAT_00071100") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    uVar2 = bfd_get_mach(param_1);\n    uVar7 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar7,uVar2);\n    pcVar6 = (char *)dcgettext(0,"architecture: %s, ",5);\n    printf(pcVar6,uVar2);\n    uVar9 = param_1[10];\n    pcVar6 = (char *)dcgettext(0,"flags 0x%08x:\n",5);\n    printf(pcVar6,uVar9 >> 5 & 0x3ff);\n    pcVar6 = "";\n    uVar9 = (uint)param_1[10] >> 5;\n    if ((uVar9 & 1) != 0) {\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 2) != 0) {\n      printf("%s%s",pcVar6,"EXEC_P");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 4) != 0) {\n      printf("%s%s",pcVar6,"HAS_LINENO");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 8) != 0) {\n      printf("%s%s",pcVar6,"HAS_DEBUG");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x10) != 0) {\n      printf("%s%s",pcVar6,"HAS_SYMS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x20) != 0) {\n      printf("%s%s",pcVar6,"HAS_LOCALS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x40) != 0) {\n      printf("%s%s",pcVar6,"DYNAMIC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x80) != 0) {\n      printf("%s%s",pcVar6,"WP_TEXT");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x100) != 0) {\n      printf("%s%s",pcVar6,"D_PAGED");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }\n    if ((uVar9 & 0x200) != 0) {\n      printf("%s%s",pcVar6,"BFD_IS_RELAXABLE");\n    }\n    pcVar6 = (char *)dcgettext(0,"\nstart address 0x",5);\n    printf(pcVar6);\n    bfd_fprintf_vma(param_1,*(undefined4 *)PTR_stdout_0006ffdc,param_1[0x1c]);\n    putchar(10);\n  }" ({ "{") (expression_statement "uVar2 = bfd_get_mach(param_1);" (assignment_expression "uVar2 = bfd_get_mach(param_1)" (identifier "uVar2") (= "=") (call_expression "bfd_get_mach(param_1)" (identifier "bfd_get_mach") (argument_list "(param_1)" (( "(") (identifier "param_1") () ")")))) (; ";")) (expression_statement "uVar7 = bfd_get_arch(param_1);" (assignment_expression "uVar7 = bfd_get_arch(param_1)" (identifier "uVar7") (= "=") (call_expression "bfd_get_arch(param_1)" (identifier "bfd_get_arch") (argument_list "(param_1)" (( "(") (identifier "param_1") () ")")))) (; ";")) (expression_statement "uVar2 = bfd_printable_arch_mach(uVar7,uVar2);" (assignment_expression "uVar2 = bfd_printable_arch_mach(uVar7,uVar2)" (identifier "uVar2") (= "=") (call_expression "bfd_printable_arch_mach(uVar7,uVar2)" (identifier "bfd_printable_arch_mach") (argument_list "(uVar7,uVar2)" (( "(") (identifier "uVar7") (, ",") (identifier "uVar2") () ")")))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,"architecture: %s, ",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"architecture: %s, ",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"architecture: %s, ",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"architecture: %s, ",5)" (identifier "dcgettext") (argument_list "(0,"architecture: %s, ",5)" (( "(") (number_literal "0") (, ",") (string_literal ""architecture: %s, "" (" """) (string_content "architecture: %s, ") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6,uVar2);" (call_expression "printf(pcVar6,uVar2)" (identifier "printf") (argument_list "(pcVar6,uVar2)" (( "(") (identifier "pcVar6") (, ",") (identifier "uVar2") () ")"))) (; ";")) (expression_statement "uVar9 = param_1[10];" (assignment_expression "uVar9 = param_1[10]" (identifier "uVar9") (= "=") (subscript_expression "param_1[10]" (identifier "param_1") ([ "[") (number_literal "10") (] "]"))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,"flags 0x%08x:\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"flags 0x%08x:\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"flags 0x%08x:\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"flags 0x%08x:\n",5)" (identifier "dcgettext") (argument_list "(0,"flags 0x%08x:\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""flags 0x%08x:\n"" (" """) (string_content "flags 0x%08x:") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6,uVar9 >> 5 & 0x3ff);" (call_expression "printf(pcVar6,uVar9 >> 5 & 0x3ff)" (identifier "printf") (argument_list "(pcVar6,uVar9 >> 5 & 0x3ff)" (( "(") (identifier "pcVar6") (, ",") (binary_expression "uVar9 >> 5 & 0x3ff" (binary_expression "uVar9 >> 5" (identifier "uVar9") (>> ">>") (number_literal "5")) (& "&") (number_literal "0x3ff")) () ")"))) (; ";")) (expression_statement "pcVar6 = "";" (assignment_expression "pcVar6 = """ (identifier "pcVar6") (= "=") (string_literal """" (" """) (" """))) (; ";")) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" (identifier "uVar9") (= "=") (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_1[10]" (identifier "param_1") ([ "[") (number_literal "10") (] "]"))) (>> ">>") (number_literal "5"))) (; ";")) (if_statement "if ((uVar9 & 1) != 0) {\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" (if "if") (parenthesized_expression "((uVar9 & 1) != 0)" (( "(") (binary_expression "(uVar9 & 1) != 0" (parenthesized_expression "(uVar9 & 1)" (( "(") (binary_expression "uVar9 & 1" (identifier "uVar9") (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" ({ "{") (expression_statement "printf("%s%s",&DAT_0004ca07,"HAS_RELOC");" (call_expression "printf("%s%s",&DAT_0004ca07,"HAS_RELOC")" (identifier "printf") (argument_list "("%s%s",&DAT_0004ca07,"HAS_RELOC")" (( "(") (string_literal ""%s%s"" (" """) (string_content "%s%s") (" """)) (, ",") (pointer_expression "&DAT_0004ca07" (& "&") (identifier "DAT_0004ca07")) (, ",") (string_literal ""HAS_RELOC"" (" """) (string_content "HAS_RELOC") (" """)) () ")"))) (; ";")) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" (identifier "pcVar6") (= "=") (string_literal "", "" (" """) (string_content ", ") (" """))) (; ";")) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" (identifier "uVar9") (= "=") (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_1[10]" (identifier "param_1") ([ "[") (number_literal "10") (] "]"))) (>> ">>") (number_literal "5"))) (; ";")) (} "}"))) (if_statement "if ((uVar9 & 2) != 0) {\n      printf("%s%s",pcVar6,"EXEC_P");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" (if "if") (parenthesized_expression "((uVar9 & 2) != 0)" (( "(") (binary_expression "(uVar9 & 2) != 0" (parenthesized_expression "(uVar9 & 2)" (( "(") (binary_expression "uVar9 & 2" (identifier "uVar9") (& "&") (number_literal "2")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      printf("%s%s",pcVar6,"EXEC_P");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" ({ "{") (expression_statement "printf("%s%s",pcVar6,"EXEC_P");" (call_expression "printf("%s%s",pcVar6,"EXEC_P")" (identifier "printf") (argument_list "("%s%s",pcVar6,"EXEC_P")" (( "(") (string_literal ""%s%s"" (" """) (string_content "%s%s") (" """)) (, ",") (identifier "pcVar6") (, ",") (string_literal ""EXEC_P"" (" """) (string_content "EXEC_P") (" """)) () ")"))) (; ";")) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" (identifier "pcVar6") (= "=") (string_literal "", "" (" """) (string_content ", ") (" """))) (; ";")) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" (identifier "uVar9") (= "=") (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_1[10]" (identifier "param_1") ([ "[") (number_literal "10") (] "]"))) (>> ">>") (number_literal "5"))) (; ";")) (} "}"))) (if_statement "if ((uVar9 & 4) != 0) {\n      printf("%s%s",pcVar6,"HAS_LINENO");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" (if "if") (parenthesized_expression "((uVar9 & 4) != 0)" (( "(") (binary_expression "(uVar9 & 4) != 0" (parenthesized_expression "(uVar9 & 4)" (( "(") (binary_expression "uVar9 & 4" (identifier "uVar9") (& "&") (number_literal "4")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      printf("%s%s",pcVar6,"HAS_LINENO");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" ({ "{") (expression_statement "printf("%s%s",pcVar6,"HAS_LINENO");" (call_expression "printf("%s%s",pcVar6,"HAS_LINENO")" (identifier "printf") (argument_list "("%s%s",pcVar6,"HAS_LINENO")" (( "(") (string_literal ""%s%s"" (" """) (string_content "%s%s") (" """)) (, ",") (identifier "pcVar6") (, ",") (string_literal ""HAS_LINENO"" (" """) (string_content "HAS_LINENO") (" """)) () ")"))) (; ";")) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" (identifier "pcVar6") (= "=") (string_literal "", "" (" """) (string_content ", ") (" """))) (; ";")) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" (identifier "uVar9") (= "=") (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_1[10]" (identifier "param_1") ([ "[") (number_literal "10") (] "]"))) (>> ">>") (number_literal "5"))) (; ";")) (} "}"))) (if_statement "if ((uVar9 & 8) != 0) {\n      printf("%s%s",pcVar6,"HAS_DEBUG");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" (if "if") (parenthesized_expression "((uVar9 & 8) != 0)" (( "(") (binary_expression "(uVar9 & 8) != 0" (parenthesized_expression "(uVar9 & 8)" (( "(") (binary_expression "uVar9 & 8" (identifier "uVar9") (& "&") (number_literal "8")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      printf("%s%s",pcVar6,"HAS_DEBUG");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" ({ "{") (expression_statement "printf("%s%s",pcVar6,"HAS_DEBUG");" (call_expression "printf("%s%s",pcVar6,"HAS_DEBUG")" (identifier "printf") (argument_list "("%s%s",pcVar6,"HAS_DEBUG")" (( "(") (string_literal ""%s%s"" (" """) (string_content "%s%s") (" """)) (, ",") (identifier "pcVar6") (, ",") (string_literal ""HAS_DEBUG"" (" """) (string_content "HAS_DEBUG") (" """)) () ")"))) (; ";")) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" (identifier "pcVar6") (= "=") (string_literal "", "" (" """) (string_content ", ") (" """))) (; ";")) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" (identifier "uVar9") (= "=") (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_1[10]" (identifier "param_1") ([ "[") (number_literal "10") (] "]"))) (>> ">>") (number_literal "5"))) (; ";")) (} "}"))) (if_statement "if ((uVar9 & 0x10) != 0) {\n      printf("%s%s",pcVar6,"HAS_SYMS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" (if "if") (parenthesized_expression "((uVar9 & 0x10) != 0)" (( "(") (binary_expression "(uVar9 & 0x10) != 0" (parenthesized_expression "(uVar9 & 0x10)" (( "(") (binary_expression "uVar9 & 0x10" (identifier "uVar9") (& "&") (number_literal "0x10")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      printf("%s%s",pcVar6,"HAS_SYMS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" ({ "{") (expression_statement "printf("%s%s",pcVar6,"HAS_SYMS");" (call_expression "printf("%s%s",pcVar6,"HAS_SYMS")" (identifier "printf") (argument_list "("%s%s",pcVar6,"HAS_SYMS")" (( "(") (string_literal ""%s%s"" (" """) (string_content "%s%s") (" """)) (, ",") (identifier "pcVar6") (, ",") (string_literal ""HAS_SYMS"" (" """) (string_content "HAS_SYMS") (" """)) () ")"))) (; ";")) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" (identifier "pcVar6") (= "=") (string_literal "", "" (" """) (string_content ", ") (" """))) (; ";")) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" (identifier "uVar9") (= "=") (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_1[10]" (identifier "param_1") ([ "[") (number_literal "10") (] "]"))) (>> ">>") (number_literal "5"))) (; ";")) (} "}"))) (if_statement "if ((uVar9 & 0x20) != 0) {\n      printf("%s%s",pcVar6,"HAS_LOCALS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" (if "if") (parenthesized_expression "((uVar9 & 0x20) != 0)" (( "(") (binary_expression "(uVar9 & 0x20) != 0" (parenthesized_expression "(uVar9 & 0x20)" (( "(") (binary_expression "uVar9 & 0x20" (identifier "uVar9") (& "&") (number_literal "0x20")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      printf("%s%s",pcVar6,"HAS_LOCALS");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" ({ "{") (expression_statement "printf("%s%s",pcVar6,"HAS_LOCALS");" (call_expression "printf("%s%s",pcVar6,"HAS_LOCALS")" (identifier "printf") (argument_list "("%s%s",pcVar6,"HAS_LOCALS")" (( "(") (string_literal ""%s%s"" (" """) (string_content "%s%s") (" """)) (, ",") (identifier "pcVar6") (, ",") (string_literal ""HAS_LOCALS"" (" """) (string_content "HAS_LOCALS") (" """)) () ")"))) (; ";")) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" (identifier "pcVar6") (= "=") (string_literal "", "" (" """) (string_content ", ") (" """))) (; ";")) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" (identifier "uVar9") (= "=") (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_1[10]" (identifier "param_1") ([ "[") (number_literal "10") (] "]"))) (>> ">>") (number_literal "5"))) (; ";")) (} "}"))) (if_statement "if ((uVar9 & 0x40) != 0) {\n      printf("%s%s",pcVar6,"DYNAMIC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" (if "if") (parenthesized_expression "((uVar9 & 0x40) != 0)" (( "(") (binary_expression "(uVar9 & 0x40) != 0" (parenthesized_expression "(uVar9 & 0x40)" (( "(") (binary_expression "uVar9 & 0x40" (identifier "uVar9") (& "&") (number_literal "0x40")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      printf("%s%s",pcVar6,"DYNAMIC");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" ({ "{") (expression_statement "printf("%s%s",pcVar6,"DYNAMIC");" (call_expression "printf("%s%s",pcVar6,"DYNAMIC")" (identifier "printf") (argument_list "("%s%s",pcVar6,"DYNAMIC")" (( "(") (string_literal ""%s%s"" (" """) (string_content "%s%s") (" """)) (, ",") (identifier "pcVar6") (, ",") (string_literal ""DYNAMIC"" (" """) (string_content "DYNAMIC") (" """)) () ")"))) (; ";")) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" (identifier "pcVar6") (= "=") (string_literal "", "" (" """) (string_content ", ") (" """))) (; ";")) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" (identifier "uVar9") (= "=") (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_1[10]" (identifier "param_1") ([ "[") (number_literal "10") (] "]"))) (>> ">>") (number_literal "5"))) (; ";")) (} "}"))) (if_statement "if ((uVar9 & 0x80) != 0) {\n      printf("%s%s",pcVar6,"WP_TEXT");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" (if "if") (parenthesized_expression "((uVar9 & 0x80) != 0)" (( "(") (binary_expression "(uVar9 & 0x80) != 0" (parenthesized_expression "(uVar9 & 0x80)" (( "(") (binary_expression "uVar9 & 0x80" (identifier "uVar9") (& "&") (number_literal "0x80")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      printf("%s%s",pcVar6,"WP_TEXT");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" ({ "{") (expression_statement "printf("%s%s",pcVar6,"WP_TEXT");" (call_expression "printf("%s%s",pcVar6,"WP_TEXT")" (identifier "printf") (argument_list "("%s%s",pcVar6,"WP_TEXT")" (( "(") (string_literal ""%s%s"" (" """) (string_content "%s%s") (" """)) (, ",") (identifier "pcVar6") (, ",") (string_literal ""WP_TEXT"" (" """) (string_content "WP_TEXT") (" """)) () ")"))) (; ";")) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" (identifier "pcVar6") (= "=") (string_literal "", "" (" """) (string_content ", ") (" """))) (; ";")) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" (identifier "uVar9") (= "=") (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_1[10]" (identifier "param_1") ([ "[") (number_literal "10") (] "]"))) (>> ">>") (number_literal "5"))) (; ";")) (} "}"))) (if_statement "if ((uVar9 & 0x100) != 0) {\n      printf("%s%s",pcVar6,"D_PAGED");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" (if "if") (parenthesized_expression "((uVar9 & 0x100) != 0)" (( "(") (binary_expression "(uVar9 & 0x100) != 0" (parenthesized_expression "(uVar9 & 0x100)" (( "(") (binary_expression "uVar9 & 0x100" (identifier "uVar9") (& "&") (number_literal "0x100")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      printf("%s%s",pcVar6,"D_PAGED");\n      pcVar6 = ", ";\n      uVar9 = (uint)param_1[10] >> 5;\n    }" ({ "{") (expression_statement "printf("%s%s",pcVar6,"D_PAGED");" (call_expression "printf("%s%s",pcVar6,"D_PAGED")" (identifier "printf") (argument_list "("%s%s",pcVar6,"D_PAGED")" (( "(") (string_literal ""%s%s"" (" """) (string_content "%s%s") (" """)) (, ",") (identifier "pcVar6") (, ",") (string_literal ""D_PAGED"" (" """) (string_content "D_PAGED") (" """)) () ")"))) (; ";")) (expression_statement "pcVar6 = ", ";" (assignment_expression "pcVar6 = ", "" (identifier "pcVar6") (= "=") (string_literal "", "" (" """) (string_content ", ") (" """))) (; ";")) (expression_statement "uVar9 = (uint)param_1[10] >> 5;" (assignment_expression "uVar9 = (uint)param_1[10] >> 5" (identifier "uVar9") (= "=") (binary_expression "(uint)param_1[10] >> 5" (cast_expression "(uint)param_1[10]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_1[10]" (identifier "param_1") ([ "[") (number_literal "10") (] "]"))) (>> ">>") (number_literal "5"))) (; ";")) (} "}"))) (if_statement "if ((uVar9 & 0x200) != 0) {\n      printf("%s%s",pcVar6,"BFD_IS_RELAXABLE");\n    }" (if "if") (parenthesized_expression "((uVar9 & 0x200) != 0)" (( "(") (binary_expression "(uVar9 & 0x200) != 0" (parenthesized_expression "(uVar9 & 0x200)" (( "(") (binary_expression "uVar9 & 0x200" (identifier "uVar9") (& "&") (number_literal "0x200")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      printf("%s%s",pcVar6,"BFD_IS_RELAXABLE");\n    }" ({ "{") (expression_statement "printf("%s%s",pcVar6,"BFD_IS_RELAXABLE");" (call_expression "printf("%s%s",pcVar6,"BFD_IS_RELAXABLE")" (identifier "printf") (argument_list "("%s%s",pcVar6,"BFD_IS_RELAXABLE")" (( "(") (string_literal ""%s%s"" (" """) (string_content "%s%s") (" """)) (, ",") (identifier "pcVar6") (, ",") (string_literal ""BFD_IS_RELAXABLE"" (" """) (string_content "BFD_IS_RELAXABLE") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "pcVar6 = (char *)dcgettext(0,"\nstart address 0x",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"\nstart address 0x",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"\nstart address 0x",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"\nstart address 0x",5)" (identifier "dcgettext") (argument_list "(0,"\nstart address 0x",5)" (( "(") (number_literal "0") (, ",") (string_literal ""\nstart address 0x"" (" """) (escape_sequence "\n") (string_content "start address 0x") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" (identifier "printf") (argument_list "(pcVar6)" (( "(") (identifier "pcVar6") () ")"))) (; ";")) (expression_statement "bfd_fprintf_vma(param_1,*(undefined4 *)PTR_stdout_0006ffdc,param_1[0x1c]);" (call_expression "bfd_fprintf_vma(param_1,*(undefined4 *)PTR_stdout_0006ffdc,param_1[0x1c])" (identifier "bfd_fprintf_vma") (argument_list "(param_1,*(undefined4 *)PTR_stdout_0006ffdc,param_1[0x1c])" (( "(") (identifier "param_1") (, ",") (pointer_expression "*(undefined4 *)PTR_stdout_0006ffdc" (* "*") (cast_expression "(undefined4 *)PTR_stdout_0006ffdc" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_stdout_0006ffdc"))) (, ",") (subscript_expression "param_1[0x1c]" (identifier "param_1") ([ "[") (number_literal "0x1c") (] "]")) () ")"))) (; ";")) (expression_statement "putchar(10);" (call_expression "putchar(10)" (identifier "putchar") (argument_list "(10)" (( "(") (number_literal "10") () ")"))) (; ";")) (} "}"))) (if_statement "if (DAT_000710e8 != 0) {\n    (**(code **)(param_1[1] + 0xc4))(param_1,*(undefined4 *)PTR_stdout_0006ffdc);\n  }" (if "if") (parenthesized_expression "(DAT_000710e8 != 0)" (( "(") (binary_expression "DAT_000710e8 != 0" (identifier "DAT_000710e8") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    (**(code **)(param_1[1] + 0xc4))(param_1,*(undefined4 *)PTR_stdout_0006ffdc);\n  }" ({ "{") (expression_statement "(**(code **)(param_1[1] + 0xc4))(param_1,*(undefined4 *)PTR_stdout_0006ffdc);" (call_expression "(**(code **)(param_1[1] + 0xc4))(param_1,*(undefined4 *)PTR_stdout_0006ffdc)" (parenthesized_expression "(**(code **)(param_1[1] + 0xc4))" (( "(") (pointer_expression "**(code **)(param_1[1] + 0xc4)" (* "*") (pointer_expression "*(code **)(param_1[1] + 0xc4)" (* "*") (cast_expression "(code **)(param_1[1] + 0xc4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1[1] + 0xc4)" (( "(") (binary_expression "param_1[1] + 0xc4" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) (+ "+") (number_literal "0xc4")) () ")"))))) () ")")) (argument_list "(param_1,*(undefined4 *)PTR_stdout_0006ffdc)" (( "(") (identifier "param_1") (, ",") (pointer_expression "*(undefined4 *)PTR_stdout_0006ffdc" (* "*") (cast_expression "(undefined4 *)PTR_stdout_0006ffdc" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_stdout_0006ffdc"))) () ")"))) (; ";")) (} "}"))) (if_statement "if (DAT_000710e4 != 0) {\n    uVar2 = dcgettext(0,"option -P/--private not supported by this file",5);\n    FUN_000451b0(uVar2);\n  }" (if "if") (parenthesized_expression "(DAT_000710e4 != 0)" (( "(") (binary_expression "DAT_000710e4 != 0" (identifier "DAT_000710e4") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    uVar2 = dcgettext(0,"option -P/--private not supported by this file",5);\n    FUN_000451b0(uVar2);\n  }" ({ "{") (expression_statement "uVar2 = dcgettext(0,"option -P/--private not supported by this file",5);" (assignment_expression "uVar2 = dcgettext(0,"option -P/--private not supported by this file",5)" (identifier "uVar2") (= "=") (call_expression "dcgettext(0,"option -P/--private not supported by this file",5)" (identifier "dcgettext") (argument_list "(0,"option -P/--private not supported by this file",5)" (( "(") (number_literal "0") (, ",") (string_literal ""option -P/--private not supported by this file"" (" """) (string_content "option -P/--private not supported by this file") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_000451b0(uVar2);" (call_expression "FUN_000451b0(uVar2)" (identifier "FUN_000451b0") (argument_list "(uVar2)" (( "(") (identifier "uVar2") () ")"))) (; ";")) (} "}"))) (if_statement "if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {\n    putc(10,*(FILE **)PTR_stdout_0006ffdc);\n  }" (if "if") (parenthesized_expression "(DAT_000710a8 == 0 && DAT_000710a4 == 0)" (( "(") (binary_expression "DAT_000710a8 == 0 && DAT_000710a4 == 0" (binary_expression "DAT_000710a8 == 0" (identifier "DAT_000710a8") (== "==") (number_literal "0")) (&& "&&") (binary_expression "DAT_000710a4 == 0" (identifier "DAT_000710a4") (== "==") (number_literal "0"))) () ")")) (compound_statement "{\n    putc(10,*(FILE **)PTR_stdout_0006ffdc);\n  }" ({ "{") (expression_statement "putc(10,*(FILE **)PTR_stdout_0006ffdc);" (call_expression "putc(10,*(FILE **)PTR_stdout_0006ffdc)" (identifier "putc") (argument_list "(10,*(FILE **)PTR_stdout_0006ffdc)" (( "(") (number_literal "10") (, ",") (pointer_expression "*(FILE **)PTR_stdout_0006ffdc" (* "*") (cast_expression "(FILE **)PTR_stdout_0006ffdc" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR_stdout_0006ffdc"))) () ")"))) (; ";")) (} "}"))) (expression_statement "pvVar10 = DAT_0007106c;" (assignment_expression "pvVar10 = DAT_0007106c" (identifier "pvVar10") (= "=") (identifier "DAT_0007106c")) (; ";")) (if_statement "if ((((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0) || DAT_000710ac != 0) ||\n      DAT_000710d0 != 0) {\n    if ((*(byte *)((int)param_1 + 0x29) & 2) == 0) {\n      DAT_00071068 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);\n      if (iVar3 < 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    \n        FUN_000450f0(uVar2);\n      }\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);\n      if (DAT_00071068 < 0) goto LAB_00017bfe;\n    }\n  }" (if "if") (parenthesized_expression "((((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0) || DAT_000710ac != 0) ||\n      DAT_000710d0 != 0)" (( "(") (binary_expression "(((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0) || DAT_000710ac != 0) ||\n      DAT_000710d0 != 0" (parenthesized_expression "(((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0) || DAT_000710ac != 0)" (( "(") (binary_expression "((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0) || DAT_000710ac != 0" (parenthesized_expression "((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0)" (( "(") (binary_expression "(DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0" (parenthesized_expression "(DAT_000710fc != 0 || DAT_000710f4 != 0)" (( "(") (binary_expression "DAT_000710fc != 0 || DAT_000710f4 != 0" (binary_expression "DAT_000710fc != 0" (identifier "DAT_000710fc") (!= "!=") (number_literal "0")) (|| "||") (binary_expression "DAT_000710f4 != 0" (identifier "DAT_000710f4") (!= "!=") (number_literal "0"))) () ")")) (|| "||") (binary_expression "DAT_000710c4 != 0" (identifier "DAT_000710c4") (!= "!=") (number_literal "0"))) () ")")) (|| "||") (binary_expression "DAT_000710ac != 0" (identifier "DAT_000710ac") (!= "!=") (number_literal "0"))) () ")")) (|| "||") (binary_expression "DAT_000710d0 != 0" (identifier "DAT_000710d0") (!= "!=") (number_literal "0"))) () ")")) (compound_statement "{\n    if ((*(byte *)((int)param_1 + 0x29) & 2) == 0) {\n      DAT_00071068 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);\n      if (iVar3 < 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    \n        FUN_000450f0(uVar2);\n      }\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);\n      if (DAT_00071068 < 0) goto LAB_00017bfe;\n    }\n  }" ({ "{") (if_statement "if ((*(byte *)((int)param_1 + 0x29) & 2) == 0) {\n      DAT_00071068 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);\n      if (iVar3 < 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    \n        FUN_000450f0(uVar2);\n      }\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);\n      if (DAT_00071068 < 0) goto LAB_00017bfe;\n    }" (if "if") (parenthesized_expression "((*(byte *)((int)param_1 + 0x29) & 2) == 0)" (( "(") (binary_expression "(*(byte *)((int)param_1 + 0x29) & 2) == 0" (parenthesized_expression "(*(byte *)((int)param_1 + 0x29) & 2)" (( "(") (binary_expression "*(byte *)((int)param_1 + 0x29) & 2" (pointer_expression "*(byte *)((int)param_1 + 0x29)" (* "*") (cast_expression "(byte *)((int)param_1 + 0x29)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)param_1 + 0x29)" (( "(") (binary_expression "(int)param_1 + 0x29" (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1")) (+ "+") (number_literal "0x29")) () ")")))) (& "&") (number_literal "2")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      DAT_00071068 = 0;\n      pvVar10 = (void *)0x0;\n    }" ({ "{") (expression_statement "DAT_00071068 = 0;" (assignment_expression "DAT_00071068 = 0" (identifier "DAT_00071068") (= "=") (number_literal "0")) (; ";")) (expression_statement "pvVar10 = (void *)0x0;" (assignment_expression "pvVar10 = (void *)0x0" (identifier "pvVar10") (= "=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}")) (else_clause "else {\n      iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);\n      if (iVar3 < 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    \n        FUN_000450f0(uVar2);\n      }\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);\n      if (DAT_00071068 < 0) goto LAB_00017bfe;\n    }" (else "else") (compound_statement "{\n      iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);\n      if (iVar3 < 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    \n        FUN_000450f0(uVar2);\n      }\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);\n      if (DAT_00071068 < 0) goto LAB_00017bfe;\n    }" ({ "{") (expression_statement "iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);" (assignment_expression "iVar3 = (**(code **)(param_1[1] + 0x104))(param_1)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(param_1[1] + 0x104))(param_1)" (parenthesized_expression "(**(code **)(param_1[1] + 0x104))" (( "(") (pointer_expression "**(code **)(param_1[1] + 0x104)" (* "*") (pointer_expression "*(code **)(param_1[1] + 0x104)" (* "*") (cast_expression "(code **)(param_1[1] + 0x104)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1[1] + 0x104)" (( "(") (binary_expression "param_1[1] + 0x104" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) (+ "+") (number_literal "0x104")) () ")"))))) () ")")) (argument_list "(param_1)" (( "(") (identifier "param_1") () ")")))) (; ";")) (if_statement "if (iVar3 < 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    \n        FUN_000450f0(uVar2);\n      }" (if "if") (parenthesized_expression "(iVar3 < 0)" (( "(") (binary_expression "iVar3 < 0" (identifier "iVar3") (< "<") (number_literal "0")) () ")")) (compound_statement "{\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);\n        FUN_000451b0(uVar7,uVar2);\n        uVar2 = dcgettext(0,"error message was",5);\n                    \n        FUN_000450f0(uVar2);\n      }" ({ "{") (expression_statement "uVar2 = *param_1;" (assignment_expression "uVar2 = *param_1" (identifier "uVar2") (= "=") (pointer_expression "*param_1" (* "*") (identifier "param_1"))) (; ";")) (expression_statement "uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);" (assignment_expression "uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3)" (identifier "uVar7") (= "=") (call_expression "dcgettext(0,"failed to read symbol table from: %s",5,iVar3)" (identifier "dcgettext") (argument_list "(0,"failed to read symbol table from: %s",5,iVar3)" (( "(") (number_literal "0") (, ",") (string_literal ""failed to read symbol table from: %s"" (" """) (string_content "failed to read symbol table from: %s") (" """)) (, ",") (number_literal "5") (, ",") (identifier "iVar3") () ")")))) (; ";")) (expression_statement "FUN_000451b0(uVar7,uVar2);" (call_expression "FUN_000451b0(uVar7,uVar2)" (identifier "FUN_000451b0") (argument_list "(uVar7,uVar2)" (( "(") (identifier "uVar7") (, ",") (identifier "uVar2") () ")"))) (; ";")) (expression_statement "uVar2 = dcgettext(0,"error message was",5);" (assignment_expression "uVar2 = dcgettext(0,"error message was",5)" (identifier "uVar2") (= "=") (call_expression "dcgettext(0,"error message was",5)" (identifier "dcgettext") (argument_list "(0,"error message was",5)" (( "(") (number_literal "0") (, ",") (string_literal ""error message was"" (" """) (string_content "error message was") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_000450f0(uVar2);" (call_expression "FUN_000450f0(uVar2)" (identifier "FUN_000450f0") (argument_list "(uVar2)" (( "(") (identifier "uVar2") () ")"))) (; ";")) (} "}"))) (expression_statement "pvVar10 = (void *)0x0;" (assignment_expression "pvVar10 = (void *)0x0" (identifier "pvVar10") (= "=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (if_statement "if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }" (if "if") (parenthesized_expression "(iVar3 != 0)" (( "(") (binary_expression "iVar3 != 0" (identifier "iVar3") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        pvVar10 = (void *)xmalloc(iVar3);\n      }" ({ "{") (expression_statement "pvVar10 = (void *)xmalloc(iVar3);" (assignment_expression "pvVar10 = (void *)xmalloc(iVar3)" (identifier "pvVar10") (= "=") (cast_expression "(void *)xmalloc(iVar3)" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "xmalloc(iVar3)" (identifier "xmalloc") (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))))) (; ";")) (} "}"))) (expression_statement "DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);" (assignment_expression "DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10)" (identifier "DAT_00071068") (= "=") (call_expression "(**(code **)(param_1[1] + 0x108))(param_1,pvVar10)" (parenthesized_expression "(**(code **)(param_1[1] + 0x108))" (( "(") (pointer_expression "**(code **)(param_1[1] + 0x108)" (* "*") (pointer_expression "*(code **)(param_1[1] + 0x108)" (* "*") (cast_expression "(code **)(param_1[1] + 0x108)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1[1] + 0x108)" (( "(") (binary_expression "param_1[1] + 0x108" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) (+ "+") (number_literal "0x108")) () ")"))))) () ")")) (argument_list "(param_1,pvVar10)" (( "(") (identifier "param_1") (, ",") (identifier "pvVar10") () ")")))) (; ";")) (if_statement "if (DAT_00071068 < 0) goto LAB_00017bfe;" (if "if") (parenthesized_expression "(DAT_00071068 < 0)" (( "(") (binary_expression "DAT_00071068 < 0" (identifier "DAT_00071068") (< "<") (number_literal "0")) () ")")) (goto_statement "goto LAB_00017bfe;" (goto "goto") (statement_identifier "LAB_00017bfe") (; ";"))) (} "}")))) (} "}"))) (expression_statement "DAT_0007106c = pvVar10;" (assignment_expression "DAT_0007106c = pvVar10" (identifier "DAT_0007106c") (= "=") (identifier "pvVar10")) (; ";")) (if_statement "if (DAT_00071104 != 0) {\n    local_b4[0] = 0xd;\n    pcVar6 = (char *)dcgettext(0,"Sections:\n",5);\n    printf(pcVar6);\n    if (DAT_000710b4 != 0) {\n      bfd_map_over_sections(param_1,FUN_00016d60,local_b4);\n    }\n    uVar9 = local_b4[0];\n    pcVar6 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);\n    printf(pcVar6,uVar9,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);\n    if (DAT_000710b4 != 0) {\n      pcVar6 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar6);\n    }\n    putchar(10);\n    bfd_map_over_sections(param_1,FUN_00016160,local_b4);\n  }" (if "if") (parenthesized_expression "(DAT_00071104 != 0)" (( "(") (binary_expression "DAT_00071104 != 0" (identifier "DAT_00071104") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    local_b4[0] = 0xd;\n    pcVar6 = (char *)dcgettext(0,"Sections:\n",5);\n    printf(pcVar6);\n    if (DAT_000710b4 != 0) {\n      bfd_map_over_sections(param_1,FUN_00016d60,local_b4);\n    }\n    uVar9 = local_b4[0];\n    pcVar6 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);\n    printf(pcVar6,uVar9,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);\n    if (DAT_000710b4 != 0) {\n      pcVar6 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar6);\n    }\n    putchar(10);\n    bfd_map_over_sections(param_1,FUN_00016160,local_b4);\n  }" ({ "{") (expression_statement "local_b4[0] = 0xd;" (assignment_expression "local_b4[0] = 0xd" (subscript_expression "local_b4[0]" (identifier "local_b4") ([ "[") (number_literal "0") (] "]")) (= "=") (number_literal "0xd")) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,"Sections:\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"Sections:\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"Sections:\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"Sections:\n",5)" (identifier "dcgettext") (argument_list "(0,"Sections:\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Sections:\n"" (" """) (string_content "Sections:") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" (identifier "printf") (argument_list "(pcVar6)" (( "(") (identifier "pcVar6") () ")"))) (; ";")) (if_statement "if (DAT_000710b4 != 0) {\n      bfd_map_over_sections(param_1,FUN_00016d60,local_b4);\n    }" (if "if") (parenthesized_expression "(DAT_000710b4 != 0)" (( "(") (binary_expression "DAT_000710b4 != 0" (identifier "DAT_000710b4") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      bfd_map_over_sections(param_1,FUN_00016d60,local_b4);\n    }" ({ "{") (expression_statement "bfd_map_over_sections(param_1,FUN_00016d60,local_b4);" (call_expression "bfd_map_over_sections(param_1,FUN_00016d60,local_b4)" (identifier "bfd_map_over_sections") (argument_list "(param_1,FUN_00016d60,local_b4)" (( "(") (identifier "param_1") (, ",") (identifier "FUN_00016d60") (, ",") (identifier "local_b4") () ")"))) (; ";")) (} "}"))) (expression_statement "uVar9 = local_b4[0];" (assignment_expression "uVar9 = local_b4[0]" (identifier "uVar9") (= "=") (subscript_expression "local_b4[0]" (identifier "local_b4") ([ "[") (number_literal "0") (] "]"))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5)" (identifier "dcgettext") (argument_list "(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Idx %-*s Size      %-*s%-*sFile off  Algn"" (" """) (string_content "Idx %-*s Size      %-*s%-*sFile off  Algn") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6,uVar9,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);" (call_expression "printf(pcVar6,uVar9,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8)" (identifier "printf") (argument_list "(pcVar6,uVar9,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8)" (( "(") (identifier "pcVar6") (, ",") (identifier "uVar9") (, ",") (string_literal ""Name"" (" """) (string_content "Name") (" """)) (, ",") (number_literal "10") (, ",") (pointer_expression "&DAT_0004c7fc" (& "&") (identifier "DAT_0004c7fc")) (, ",") (number_literal "10") (, ",") (pointer_expression "&DAT_0004c7f8" (& "&") (identifier "DAT_0004c7f8")) () ")"))) (; ";")) (if_statement "if (DAT_000710b4 != 0) {\n      pcVar6 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar6);\n    }" (if "if") (parenthesized_expression "(DAT_000710b4 != 0)" (( "(") (binary_expression "DAT_000710b4 != 0" (identifier "DAT_000710b4") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      pcVar6 = (char *)dcgettext(0,"  Flags",5);\n      printf(pcVar6);\n    }" ({ "{") (expression_statement "pcVar6 = (char *)dcgettext(0,"  Flags",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Flags",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"  Flags",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Flags",5)" (identifier "dcgettext") (argument_list "(0,"  Flags",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  Flags"" (" """) (string_content "  Flags") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" (identifier "printf") (argument_list "(pcVar6)" (( "(") (identifier "pcVar6") () ")"))) (; ";")) (} "}"))) (expression_statement "putchar(10);" (call_expression "putchar(10)" (identifier "putchar") (argument_list "(10)" (( "(") (number_literal "10") () ")"))) (; ";")) (expression_statement "bfd_map_over_sections(param_1,FUN_00016160,local_b4);" (call_expression "bfd_map_over_sections(param_1,FUN_00016160,local_b4)" (identifier "bfd_map_over_sections") (argument_list "(param_1,FUN_00016160,local_b4)" (( "(") (identifier "param_1") (, ",") (identifier "FUN_00016160") (, ",") (identifier "local_b4") () ")"))) (; ";")) (} "}"))) (if_statement "if (DAT_000710f8 == 0 && DAT_000710f0 == 0) {\n    if (DAT_000710c4 != 0) {\n      iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n      pvVar10 = DAT_0007105c;\n      if (0 < iVar3) goto LAB_000170fd;\n      goto LAB_00017145;\n    }\n  }\n  else {\nLAB_000170fd:\n    iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n    if (iVar3 < 0) {\n      uVar2 = *param_1;\n      if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {\n                    \n        FUN_000450f0(uVar2);\n      }\n      uVar7 = dcgettext(0,"%s: not a dynamic object",5);\n      FUN_000451b0(uVar7,uVar2);\n      DAT_00071110 = 1;\n      DAT_00071050 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);\n      if (DAT_00071050 < 0) goto LAB_00017bfe;\n    }\nLAB_00017145:\n    DAT_0007105c = pvVar10;\n    if ((DAT_000710c4 != 0) &&\n       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0)) {\n      DAT_00071054 = 0;\n    }\n  }" (if "if") (parenthesized_expression "(DAT_000710f8 == 0 && DAT_000710f0 == 0)" (( "(") (binary_expression "DAT_000710f8 == 0 && DAT_000710f0 == 0" (binary_expression "DAT_000710f8 == 0" (identifier "DAT_000710f8") (== "==") (number_literal "0")) (&& "&&") (binary_expression "DAT_000710f0 == 0" (identifier "DAT_000710f0") (== "==") (number_literal "0"))) () ")")) (compound_statement "{\n    if (DAT_000710c4 != 0) {\n      iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n      pvVar10 = DAT_0007105c;\n      if (0 < iVar3) goto LAB_000170fd;\n      goto LAB_00017145;\n    }\n  }" ({ "{") (if_statement "if (DAT_000710c4 != 0) {\n      iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n      pvVar10 = DAT_0007105c;\n      if (0 < iVar3) goto LAB_000170fd;\n      goto LAB_00017145;\n    }" (if "if") (parenthesized_expression "(DAT_000710c4 != 0)" (( "(") (binary_expression "DAT_000710c4 != 0" (identifier "DAT_000710c4") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n      pvVar10 = DAT_0007105c;\n      if (0 < iVar3) goto LAB_000170fd;\n      goto LAB_00017145;\n    }" ({ "{") (expression_statement "iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);" (assignment_expression "iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(param_1[1] + 0x1a8))(param_1)" (parenthesized_expression "(**(code **)(param_1[1] + 0x1a8))" (( "(") (pointer_expression "**(code **)(param_1[1] + 0x1a8)" (* "*") (pointer_expression "*(code **)(param_1[1] + 0x1a8)" (* "*") (cast_expression "(code **)(param_1[1] + 0x1a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1[1] + 0x1a8)" (( "(") (binary_expression "param_1[1] + 0x1a8" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) (+ "+") (number_literal "0x1a8")) () ")"))))) () ")")) (argument_list "(param_1)" (( "(") (identifier "param_1") () ")")))) (; ";")) (expression_statement "pvVar10 = DAT_0007105c;" (assignment_expression "pvVar10 = DAT_0007105c" (identifier "pvVar10") (= "=") (identifier "DAT_0007105c")) (; ";")) (if_statement "if (0 < iVar3) goto LAB_000170fd;" (if "if") (parenthesized_expression "(0 < iVar3)" (( "(") (binary_expression "0 < iVar3" (number_literal "0") (< "<") (identifier "iVar3")) () ")")) (goto_statement "goto LAB_000170fd;" (goto "goto") (statement_identifier "LAB_000170fd") (; ";"))) (goto_statement "goto LAB_00017145;" (goto "goto") (statement_identifier "LAB_00017145") (; ";")) (} "}"))) (} "}")) (else_clause "else {\nLAB_000170fd:\n    iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n    if (iVar3 < 0) {\n      uVar2 = *param_1;\n      if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {\n                    \n        FUN_000450f0(uVar2);\n      }\n      uVar7 = dcgettext(0,"%s: not a dynamic object",5);\n      FUN_000451b0(uVar7,uVar2);\n      DAT_00071110 = 1;\n      DAT_00071050 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);\n      if (DAT_00071050 < 0) goto LAB_00017bfe;\n    }\nLAB_00017145:\n    DAT_0007105c = pvVar10;\n    if ((DAT_000710c4 != 0) &&\n       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0)) {\n      DAT_00071054 = 0;\n    }\n  }" (else "else") (compound_statement "{\nLAB_000170fd:\n    iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);\n    if (iVar3 < 0) {\n      uVar2 = *param_1;\n      if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {\n                    \n        FUN_000450f0(uVar2);\n      }\n      uVar7 = dcgettext(0,"%s: not a dynamic object",5);\n      FUN_000451b0(uVar7,uVar2);\n      DAT_00071110 = 1;\n      DAT_00071050 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);\n      if (DAT_00071050 < 0) goto LAB_00017bfe;\n    }\nLAB_00017145:\n    DAT_0007105c = pvVar10;\n    if ((DAT_000710c4 != 0) &&\n       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0)) {\n      DAT_00071054 = 0;\n    }\n  }" ({ "{") (labeled_statement "LAB_000170fd:\n    iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);" (statement_identifier "LAB_000170fd") (: ":") (expression_statement "iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);" (assignment_expression "iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(param_1[1] + 0x1a8))(param_1)" (parenthesized_expression "(**(code **)(param_1[1] + 0x1a8))" (( "(") (pointer_expression "**(code **)(param_1[1] + 0x1a8)" (* "*") (pointer_expression "*(code **)(param_1[1] + 0x1a8)" (* "*") (cast_expression "(code **)(param_1[1] + 0x1a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1[1] + 0x1a8)" (( "(") (binary_expression "param_1[1] + 0x1a8" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) (+ "+") (number_literal "0x1a8")) () ")"))))) () ")")) (argument_list "(param_1)" (( "(") (identifier "param_1") () ")")))) (; ";"))) (if_statement "if (iVar3 < 0) {\n      uVar2 = *param_1;\n      if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {\n                    \n        FUN_000450f0(uVar2);\n      }\n      uVar7 = dcgettext(0,"%s: not a dynamic object",5);\n      FUN_000451b0(uVar7,uVar2);\n      DAT_00071110 = 1;\n      DAT_00071050 = 0;\n      pvVar10 = (void *)0x0;\n    }\n    else {\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);\n      if (DAT_00071050 < 0) goto LAB_00017bfe;\n    }" (if "if") (parenthesized_expression "(iVar3 < 0)" (( "(") (binary_expression "iVar3 < 0" (identifier "iVar3") (< "<") (number_literal "0")) () ")")) (compound_statement "{\n      uVar2 = *param_1;\n      if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {\n                    \n        FUN_000450f0(uVar2);\n      }\n      uVar7 = dcgettext(0,"%s: not a dynamic object",5);\n      FUN_000451b0(uVar7,uVar2);\n      DAT_00071110 = 1;\n      DAT_00071050 = 0;\n      pvVar10 = (void *)0x0;\n    }" ({ "{") (expression_statement "uVar2 = *param_1;" (assignment_expression "uVar2 = *param_1" (identifier "uVar2") (= "=") (pointer_expression "*param_1" (* "*") (identifier "param_1"))) (; ";")) (if_statement "if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {\n                    \n        FUN_000450f0(uVar2);\n      }" (if "if") (parenthesized_expression "((*(byte *)((int)param_1 + 0x29) & 8) != 0)" (( "(") (binary_expression "(*(byte *)((int)param_1 + 0x29) & 8) != 0" (parenthesized_expression "(*(byte *)((int)param_1 + 0x29) & 8)" (( "(") (binary_expression "*(byte *)((int)param_1 + 0x29) & 8" (pointer_expression "*(byte *)((int)param_1 + 0x29)" (* "*") (cast_expression "(byte *)((int)param_1 + 0x29)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)param_1 + 0x29)" (( "(") (binary_expression "(int)param_1 + 0x29" (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1")) (+ "+") (number_literal "0x29")) () ")")))) (& "&") (number_literal "8")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                    \n        FUN_000450f0(uVar2);\n      }" ({ "{") (expression_statement "FUN_000450f0(uVar2);" (call_expression "FUN_000450f0(uVar2)" (identifier "FUN_000450f0") (argument_list "(uVar2)" (( "(") (identifier "uVar2") () ")"))) (; ";")) (} "}"))) (expression_statement "uVar7 = dcgettext(0,"%s: not a dynamic object",5);" (assignment_expression "uVar7 = dcgettext(0,"%s: not a dynamic object",5)" (identifier "uVar7") (= "=") (call_expression "dcgettext(0,"%s: not a dynamic object",5)" (identifier "dcgettext") (argument_list "(0,"%s: not a dynamic object",5)" (( "(") (number_literal "0") (, ",") (string_literal ""%s: not a dynamic object"" (" """) (string_content "%s: not a dynamic object") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_000451b0(uVar7,uVar2);" (call_expression "FUN_000451b0(uVar7,uVar2)" (identifier "FUN_000451b0") (argument_list "(uVar7,uVar2)" (( "(") (identifier "uVar7") (, ",") (identifier "uVar2") () ")"))) (; ";")) (expression_statement "DAT_00071110 = 1;" (assignment_expression "DAT_00071110 = 1" (identifier "DAT_00071110") (= "=") (number_literal "1")) (; ";")) (expression_statement "DAT_00071050 = 0;" (assignment_expression "DAT_00071050 = 0" (identifier "DAT_00071050") (= "=") (number_literal "0")) (; ";")) (expression_statement "pvVar10 = (void *)0x0;" (assignment_expression "pvVar10 = (void *)0x0" (identifier "pvVar10") (= "=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}")) (else_clause "else {\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);\n      if (DAT_00071050 < 0) goto LAB_00017bfe;\n    }" (else "else") (compound_statement "{\n      pvVar10 = (void *)0x0;\n      if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }\n      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);\n      if (DAT_00071050 < 0) goto LAB_00017bfe;\n    }" ({ "{") (expression_statement "pvVar10 = (void *)0x0;" (assignment_expression "pvVar10 = (void *)0x0" (identifier "pvVar10") (= "=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (if_statement "if (iVar3 != 0) {\n        pvVar10 = (void *)xmalloc(iVar3);\n      }" (if "if") (parenthesized_expression "(iVar3 != 0)" (( "(") (binary_expression "iVar3 != 0" (identifier "iVar3") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        pvVar10 = (void *)xmalloc(iVar3);\n      }" ({ "{") (expression_statement "pvVar10 = (void *)xmalloc(iVar3);" (assignment_expression "pvVar10 = (void *)xmalloc(iVar3)" (identifier "pvVar10") (= "=") (cast_expression "(void *)xmalloc(iVar3)" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "xmalloc(iVar3)" (identifier "xmalloc") (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))))) (; ";")) (} "}"))) (expression_statement "DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);" (assignment_expression "DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10)" (identifier "DAT_00071050") (= "=") (call_expression "(**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10)" (parenthesized_expression "(**(code **)(param_1[1] + 0x1ac))" (( "(") (pointer_expression "**(code **)(param_1[1] + 0x1ac)" (* "*") (pointer_expression "*(code **)(param_1[1] + 0x1ac)" (* "*") (cast_expression "(code **)(param_1[1] + 0x1ac)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1[1] + 0x1ac)" (( "(") (binary_expression "param_1[1] + 0x1ac" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) (+ "+") (number_literal "0x1ac")) () ")"))))) () ")")) (argument_list "(param_1,pvVar10)" (( "(") (identifier "param_1") (, ",") (identifier "pvVar10") () ")")))) (; ";")) (if_statement "if (DAT_00071050 < 0) goto LAB_00017bfe;" (if "if") (parenthesized_expression "(DAT_00071050 < 0)" (( "(") (binary_expression "DAT_00071050 < 0" (identifier "DAT_00071050") (< "<") (number_literal "0")) () ")")) (goto_statement "goto LAB_00017bfe;" (goto "goto") (statement_identifier "LAB_00017bfe") (; ";"))) (} "}")))) (labeled_statement "LAB_00017145:\n    DAT_0007105c = pvVar10;" (statement_identifier "LAB_00017145") (: ":") (expression_statement "DAT_0007105c = pvVar10;" (assignment_expression "DAT_0007105c = pvVar10" (identifier "DAT_0007105c") (= "=") (identifier "pvVar10")) (; ";"))) (if_statement "if ((DAT_000710c4 != 0) &&\n       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0)) {\n      DAT_00071054 = 0;\n    }" (if "if") (parenthesized_expression "((DAT_000710c4 != 0) &&\n       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0))" (( "(") (binary_expression "(DAT_000710c4 != 0) &&\n       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0)" (parenthesized_expression "(DAT_000710c4 != 0)" (( "(") (binary_expression "DAT_000710c4 != 0" (identifier "DAT_000710c4") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0)" (( "(") (comma_expression "DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058), DAT_00071054 < 0" (assignment_expression "DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058)" (identifier "DAT_00071054") (= "=") (call_expression "(**(code **)(param_1[1] + 0x1b0))\n                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058)" (parenthesized_expression "(**(code **)(param_1[1] + 0x1b0))" (( "(") (pointer_expression "**(code **)(param_1[1] + 0x1b0)" (* "*") (pointer_expression "*(code **)(param_1[1] + 0x1b0)" (* "*") (cast_expression "(code **)(param_1[1] + 0x1b0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1[1] + 0x1b0)" (( "(") (binary_expression "param_1[1] + 0x1b0" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) (+ "+") (number_literal "0x1b0")) () ")"))))) () ")")) (argument_list "(param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,\n                                  &DAT_00071058)" (( "(") (identifier "param_1") (, ",") (identifier "DAT_00071068") (, ",") (identifier "DAT_0007106c") (, ",") (identifier "DAT_00071050") (, ",") (identifier "DAT_0007105c") (, ",") (pointer_expression "&DAT_00071058" (& "&") (identifier "DAT_00071058")) () ")")))) (, ",") (binary_expression "DAT_00071054 < 0" (identifier "DAT_00071054") (< "<") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n      DAT_00071054 = 0;\n    }" ({ "{") (expression_statement "DAT_00071054 = 0;" (assignment_expression "DAT_00071054 = 0" (identifier "DAT_00071054") (= "=") (number_literal "0")) (; ";")) (} "}"))) (} "}")))) (if_statement "if (DAT_000710fc != 0) {\n    FUN_00016db0();\n  }" (if "if") (parenthesized_expression "(DAT_000710fc != 0)" (( "(") (binary_expression "DAT_000710fc != 0" (identifier "DAT_000710fc") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    FUN_00016db0();\n  }" ({ "{") (expression_statement "FUN_00016db0();" (call_expression "FUN_00016db0()" (identifier "FUN_00016db0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (DAT_000710f8 != 0) {\n    FUN_00016db0();\n  }" (if "if") (parenthesized_expression "(DAT_000710f8 != 0)" (( "(") (binary_expression "DAT_000710f8 != 0" (identifier "DAT_000710f8") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    FUN_00016db0();\n  }" ({ "{") (expression_statement "FUN_00016db0();" (call_expression "FUN_00016db0()" (identifier "FUN_00016db0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (DAT_000710d0 != 0) {\n    FUN_00015f30();\n  }" (if "if") (parenthesized_expression "(DAT_000710d0 != 0)" (( "(") (binary_expression "DAT_000710d0 != 0" (identifier "DAT_000710d0") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    FUN_00015f30();\n  }" ({ "{") (expression_statement "FUN_00015f30();" (call_expression "FUN_00015f30()" (identifier "FUN_00015f30") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (DAT_000710cc != 0) {\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n  }" (if "if") (parenthesized_expression "(DAT_000710cc != 0)" (( "(") (binary_expression "DAT_000710cc != 0" (identifier "DAT_000710cc") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n    FUN_00014db0();\n  }" ({ "{") (expression_statement "FUN_00014db0();" (call_expression "FUN_00014db0()" (identifier "FUN_00014db0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "FUN_00014db0();" (call_expression "FUN_00014db0()" (identifier "FUN_00014db0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "FUN_00014db0();" (call_expression "FUN_00014db0()" (identifier "FUN_00014db0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "FUN_00014db0();" (call_expression "FUN_00014db0()" (identifier "FUN_00014db0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "FUN_00014db0();" (call_expression "FUN_00014db0()" (identifier "FUN_00014db0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (DAT_000710f4 == 0) {\nLAB_00017355:\n    if (DAT_000710f0 != 0) {\n      if (DAT_000710c4 != 0) goto LAB_00017371;\n      iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n      if (iVar3 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (iVar3 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }\n    }\nLAB_000171f0:\n    if (DAT_00071108 != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(param_1,FUN_00016840,0);\n    }\n    if (DAT_000710c4 == 0) goto joined_r0x0001721a;\n  }\n  else {\n    if (DAT_000710c4 == 0) {\n      bfd_map_over_sections(param_1,FUN_00018570,0);\n      goto LAB_00017355;\n    }\n    if (DAT_000710f0 == 0) goto LAB_000171f0;\nLAB_00017371:\n    if (DAT_00071108 != 0) goto LAB_00017ac0;\n  }" (if "if") (parenthesized_expression "(DAT_000710f4 == 0)" (( "(") (binary_expression "DAT_000710f4 == 0" (identifier "DAT_000710f4") (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00017355:\n    if (DAT_000710f0 != 0) {\n      if (DAT_000710c4 != 0) goto LAB_00017371;\n      iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n      if (iVar3 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (iVar3 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }\n    }\nLAB_000171f0:\n    if (DAT_00071108 != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(param_1,FUN_00016840,0);\n    }\n    if (DAT_000710c4 == 0) goto joined_r0x0001721a;\n  }" ({ "{") (labeled_statement "LAB_00017355:\n    if (DAT_000710f0 != 0) {\n      if (DAT_000710c4 != 0) goto LAB_00017371;\n      iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n      if (iVar3 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (iVar3 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }\n    }" (statement_identifier "LAB_00017355") (: ":") (if_statement "if (DAT_000710f0 != 0) {\n      if (DAT_000710c4 != 0) goto LAB_00017371;\n      iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n      if (iVar3 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (iVar3 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }\n    }" (if "if") (parenthesized_expression "(DAT_000710f0 != 0)" (( "(") (binary_expression "DAT_000710f0 != 0" (identifier "DAT_000710f0") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      if (DAT_000710c4 != 0) goto LAB_00017371;\n      iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n      if (iVar3 < 0) goto LAB_00017bfe;\n      printf("DYNAMIC RELOCATION RECORDS");\n      if (iVar3 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }\n    }" ({ "{") (if_statement "if (DAT_000710c4 != 0) goto LAB_00017371;" (if "if") (parenthesized_expression "(DAT_000710c4 != 0)" (( "(") (binary_expression "DAT_000710c4 != 0" (identifier "DAT_000710c4") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00017371;" (goto "goto") (statement_identifier "LAB_00017371") (; ";"))) (expression_statement "iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);" (assignment_expression "iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(param_1[1] + 0x1b4))(param_1)" (parenthesized_expression "(**(code **)(param_1[1] + 0x1b4))" (( "(") (pointer_expression "**(code **)(param_1[1] + 0x1b4)" (* "*") (pointer_expression "*(code **)(param_1[1] + 0x1b4)" (* "*") (cast_expression "(code **)(param_1[1] + 0x1b4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1[1] + 0x1b4)" (( "(") (binary_expression "param_1[1] + 0x1b4" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) (+ "+") (number_literal "0x1b4")) () ")"))))) () ")")) (argument_list "(param_1)" (( "(") (identifier "param_1") () ")")))) (; ";")) (if_statement "if (iVar3 < 0) goto LAB_00017bfe;" (if "if") (parenthesized_expression "(iVar3 < 0)" (( "(") (binary_expression "iVar3 < 0" (identifier "iVar3") (< "<") (number_literal "0")) () ")")) (goto_statement "goto LAB_00017bfe;" (goto "goto") (statement_identifier "LAB_00017bfe") (; ";"))) (expression_statement "printf("DYNAMIC RELOCATION RECORDS");" (call_expression "printf("DYNAMIC RELOCATION RECORDS")" (identifier "printf") (argument_list "("DYNAMIC RELOCATION RECORDS")" (( "(") (string_literal ""DYNAMIC RELOCATION RECORDS"" (" """) (string_content "DYNAMIC RELOCATION RECORDS") (" """)) () ")"))) (; ";")) (if_statement "if (iVar3 == 0) {\n        puts(" (none)\n");\n      }\n      else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        puts(" (none)\n");\n      }" ({ "{") (expression_statement "puts(" (none)\n");" (call_expression "puts(" (none)\n")" (identifier "puts") (argument_list "(" (none)\n")" (( "(") (string_literal "" (none)\n"" (" """) (string_content " (none)") (escape_sequence "\n") (" """)) () ")"))) (; ";")) (} "}")) (else_clause "else {\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }" (else "else") (compound_statement "{\n        pvVar10 = (void *)xmalloc(iVar3);\n        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);\n        if (iVar3 < 0) goto LAB_00017bfe;\n        if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }\n        free(pvVar10);\n      }" ({ "{") (expression_statement "pvVar10 = (void *)xmalloc(iVar3);" (assignment_expression "pvVar10 = (void *)xmalloc(iVar3)" (identifier "pvVar10") (= "=") (cast_expression "(void *)xmalloc(iVar3)" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "xmalloc(iVar3)" (identifier "xmalloc") (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))))) (; ";")) (expression_statement "iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);" (assignment_expression "iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c)" (parenthesized_expression "(**(code **)(param_1[1] + 0x1b8))" (( "(") (pointer_expression "**(code **)(param_1[1] + 0x1b8)" (* "*") (pointer_expression "*(code **)(param_1[1] + 0x1b8)" (* "*") (cast_expression "(code **)(param_1[1] + 0x1b8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1[1] + 0x1b8)" (( "(") (binary_expression "param_1[1] + 0x1b8" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) (+ "+") (number_literal "0x1b8")) () ")"))))) () ")")) (argument_list "(param_1,pvVar10,DAT_0007105c)" (( "(") (identifier "param_1") (, ",") (identifier "pvVar10") (, ",") (identifier "DAT_0007105c") () ")")))) (; ";")) (if_statement "if (iVar3 < 0) goto LAB_00017bfe;" (if "if") (parenthesized_expression "(iVar3 < 0)" (( "(") (binary_expression "iVar3 < 0" (identifier "iVar3") (< "<") (number_literal "0")) () ")")) (goto_statement "goto LAB_00017bfe;" (goto "goto") (statement_identifier "LAB_00017bfe") (; ";"))) (if_statement "if (iVar3 == 0) {\n          puts(" (none)\n");\n        }\n        else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          puts(" (none)\n");\n        }" ({ "{") (expression_statement "puts(" (none)\n");" (call_expression "puts(" (none)\n")" (identifier "puts") (argument_list "(" (none)\n")" (( "(") (string_literal "" (none)\n"" (" """) (string_content " (none)") (escape_sequence "\n") (" """)) () ")"))) (; ";")) (} "}")) (else_clause "else {\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }" (else "else") (compound_statement "{\n          putchar(10);\n          FUN_000153f0(iVar3);\n          puts("\n");\n        }" ({ "{") (expression_statement "putchar(10);" (call_expression "putchar(10)" (identifier "putchar") (argument_list "(10)" (( "(") (number_literal "10") () ")"))) (; ";")) (expression_statement "FUN_000153f0(iVar3);" (call_expression "FUN_000153f0(iVar3)" (identifier "FUN_000153f0") (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";")) (expression_statement "puts("\n");" (call_expression "puts("\n")" (identifier "puts") (argument_list "("\n")" (( "(") (string_literal ""\n"" (" """) (escape_sequence "\n") (" """)) () ")"))) (; ";")) (} "}")))) (expression_statement "free(pvVar10);" (call_expression "free(pvVar10)" (identifier "free") (argument_list "(pvVar10)" (( "(") (identifier "pvVar10") () ")"))) (; ";")) (} "}")))) (} "}")))) (labeled_statement "LAB_000171f0:\n    if (DAT_00071108 != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(param_1,FUN_00016840,0);\n    }" (statement_identifier "LAB_000171f0") (: ":") (if_statement "if (DAT_00071108 != 0) {\nLAB_00017ac0:\n      bfd_map_over_sections(param_1,FUN_00016840,0);\n    }" (if "if") (parenthesized_expression "(DAT_00071108 != 0)" (( "(") (binary_expression "DAT_00071108 != 0" (identifier "DAT_00071108") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00017ac0:\n      bfd_map_over_sections(param_1,FUN_00016840,0);\n    }" ({ "{") (labeled_statement "LAB_00017ac0:\n      bfd_map_over_sections(param_1,FUN_00016840,0);" (statement_identifier "LAB_00017ac0") (: ":") (expression_statement "bfd_map_over_sections(param_1,FUN_00016840,0);" (call_expression "bfd_map_over_sections(param_1,FUN_00016840,0)" (identifier "bfd_map_over_sections") (argument_list "(param_1,FUN_00016840,0)" (( "(") (identifier "param_1") (, ",") (identifier "FUN_00016840") (, ",") (number_literal "0") () ")"))) (; ";"))) (} "}")))) (if_statement "if (DAT_000710c4 == 0) goto joined_r0x0001721a;" (if "if") (parenthesized_expression "(DAT_000710c4 == 0)" (( "(") (binary_expression "DAT_000710c4 == 0" (identifier "DAT_000710c4") (== "==") (number_literal "0")) () ")")) (goto_statement "goto joined_r0x0001721a;" (goto "goto") (statement_identifier "joined_r0x0001721a") (; ";"))) (} "}")) (else_clause "else {\n    if (DAT_000710c4 == 0) {\n      bfd_map_over_sections(param_1,FUN_00018570,0);\n      goto LAB_00017355;\n    }\n    if (DAT_000710f0 == 0) goto LAB_000171f0;\nLAB_00017371:\n    if (DAT_00071108 != 0) goto LAB_00017ac0;\n  }" (else "else") (compound_statement "{\n    if (DAT_000710c4 == 0) {\n      bfd_map_over_sections(param_1,FUN_00018570,0);\n      goto LAB_00017355;\n    }\n    if (DAT_000710f0 == 0) goto LAB_000171f0;\nLAB_00017371:\n    if (DAT_00071108 != 0) goto LAB_00017ac0;\n  }" ({ "{") (if_statement "if (DAT_000710c4 == 0) {\n      bfd_map_over_sections(param_1,FUN_00018570,0);\n      goto LAB_00017355;\n    }" (if "if") (parenthesized_expression "(DAT_000710c4 == 0)" (( "(") (binary_expression "DAT_000710c4 == 0" (identifier "DAT_000710c4") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      bfd_map_over_sections(param_1,FUN_00018570,0);\n      goto LAB_00017355;\n    }" ({ "{") (expression_statement "bfd_map_over_sections(param_1,FUN_00018570,0);" (call_expression "bfd_map_over_sections(param_1,FUN_00018570,0)" (identifier "bfd_map_over_sections") (argument_list "(param_1,FUN_00018570,0)" (( "(") (identifier "param_1") (, ",") (identifier "FUN_00018570") (, ",") (number_literal "0") () ")"))) (; ";")) (goto_statement "goto LAB_00017355;" (goto "goto") (statement_identifier "LAB_00017355") (; ";")) (} "}"))) (if_statement "if (DAT_000710f0 == 0) goto LAB_000171f0;" (if "if") (parenthesized_expression "(DAT_000710f0 == 0)" (( "(") (binary_expression "DAT_000710f0 == 0" (identifier "DAT_000710f0") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000171f0;" (goto "goto") (statement_identifier "LAB_000171f0") (; ";"))) (labeled_statement "LAB_00017371:\n    if (DAT_00071108 != 0) goto LAB_00017ac0;" (statement_identifier "LAB_00017371") (: ":") (if_statement "if (DAT_00071108 != 0) goto LAB_00017ac0;" (if "if") (parenthesized_expression "(DAT_00071108 != 0)" (( "(") (binary_expression "DAT_00071108 != 0" (identifier "DAT_00071108") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00017ac0;" (goto "goto") (statement_identifier "LAB_00017ac0") (; ";")))) (} "}")))) (expression_statement "DAT_0007102c = 0;" (assignment_expression "DAT_0007102c = 0" (identifier "DAT_0007102c") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_00071038 = 0;" (assignment_expression "DAT_00071038 = 0" (identifier "DAT_00071038") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_00071034 = 0xffffffff;" (assignment_expression "DAT_00071034 = 0xffffffff" (identifier "DAT_00071034") (= "=") (number_literal "0xffffffff")) (; ";")) (expression_statement "DAT_00071060 = DAT_00071068;" (assignment_expression "DAT_00071060 = DAT_00071068" (identifier "DAT_00071060") (= "=") (identifier "DAT_00071068")) (; ";")) (if_statement "if (DAT_00071068 == 0) {\n    DAT_00071060 = DAT_00071050;\n  }" (if "if") (parenthesized_expression "(DAT_00071068 == 0)" (( "(") (binary_expression "DAT_00071068 == 0" (identifier "DAT_00071068") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    DAT_00071060 = DAT_00071050;\n  }" ({ "{") (expression_statement "DAT_00071060 = DAT_00071050;" (assignment_expression "DAT_00071060 = DAT_00071050" (identifier "DAT_00071060") (= "=") (identifier "DAT_00071050")) (; ";")) (} "}"))) (expression_statement "DAT_00071030 = 0;" (assignment_expression "DAT_00071030 = 0" (identifier "DAT_00071030") (= "=") (number_literal "0")) (; ";")) (expression_statement "__dest = (int *)xmalloc((DAT_00071060 + DAT_00071054) * 4);" (assignment_expression "__dest = (int *)xmalloc((DAT_00071060 + DAT_00071054) * 4)" (identifier "__dest") (= "=") (cast_expression "(int *)xmalloc((DAT_00071060 + DAT_00071054) * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "xmalloc((DAT_00071060 + DAT_00071054) * 4)" (identifier "xmalloc") (argument_list "((DAT_00071060 + DAT_00071054) * 4)" (( "(") (binary_expression "(DAT_00071060 + DAT_00071054) * 4" (parenthesized_expression "(DAT_00071060 + DAT_00071054)" (( "(") (binary_expression "DAT_00071060 + DAT_00071054" (identifier "DAT_00071060") (+ "+") (identifier "DAT_00071054")) () ")")) (* "*") (number_literal "4")) () ")"))))) (; ";")) (expression_statement "local_e8 = DAT_00071060;" (assignment_expression "local_e8 = DAT_00071060" (identifier "local_e8") (= "=") (identifier "DAT_00071060")) (; ";")) (expression_statement "pvVar10 = DAT_0007106c;" (assignment_expression "pvVar10 = DAT_0007106c" (identifier "pvVar10") (= "=") (identifier "DAT_0007106c")) (; ";")) (if_statement "if (DAT_00071068 == 0) {\n    pvVar10 = DAT_0007105c;\n  }" (if "if") (parenthesized_expression "(DAT_00071068 == 0)" (( "(") (binary_expression "DAT_00071068 == 0" (identifier "DAT_00071068") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    pvVar10 = DAT_0007105c;\n  }" ({ "{") (expression_statement "pvVar10 = DAT_0007105c;" (assignment_expression "pvVar10 = DAT_0007105c" (identifier "pvVar10") (= "=") (identifier "DAT_0007105c")) (; ";")) (} "}"))) (expression_statement "DAT_00071064 = __dest;" (assignment_expression "DAT_00071064 = __dest" (identifier "DAT_00071064") (= "=") (identifier "__dest")) (; ";")) (expression_statement "memcpy(__dest,pvVar10,DAT_00071060 << 2);" (call_expression "memcpy(__dest,pvVar10,DAT_00071060 << 2)" (identifier "memcpy") (argument_list "(__dest,pvVar10,DAT_00071060 << 2)" (( "(") (identifier "__dest") (, ",") (identifier "pvVar10") (, ",") (binary_expression "DAT_00071060 << 2" (identifier "DAT_00071060") (<< "<<") (number_literal "2")) () ")"))) (; ";")) (expression_statement "puVar4 = PTR__bfd_std_section_0006ffd8 + 0xa8;" (assignment_expression "puVar4 = PTR__bfd_std_section_0006ffd8 + 0xa8" (identifier "puVar4") (= "=") (binary_expression "PTR__bfd_std_section_0006ffd8 + 0xa8" (identifier "PTR__bfd_std_section_0006ffd8") (+ "+") (number_literal "0xa8"))) (; ";")) (expression_statement "local_f0 = __dest;" (assignment_expression "local_f0 = __dest" (identifier "local_f0") (= "=") (identifier "__dest")) (; ";")) (expression_statement "local_ec = __dest;" (assignment_expression "local_ec = __dest" (identifier "local_ec") (= "=") (identifier "__dest")) (; ";")) (labeled_statement "LAB_00017428:\n  local_e8 = local_e8 + -1;" (statement_identifier "LAB_00017428") (: ":") (expression_statement "local_e8 = local_e8 + -1;" (assignment_expression "local_e8 = local_e8 + -1" (identifier "local_e8") (= "=") (binary_expression "local_e8 + -1" (identifier "local_e8") (+ "+") (number_literal "-1"))) (; ";"))) (if_statement "if (-1 < local_e8) {\n    while( true ) {\n      piVar1 = local_f0 + 1;\n      iVar3 = *local_f0;\n      pbVar12 = *(byte **)(iVar3 + 4);\n      local_f0 = piVar1;\n      if ((pbVar12 == (byte *)0x0) || (*pbVar12 == 0)) break;\n      bVar16 = false;\n      bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0;\n      if (!bVar18) {\n        iVar8 = 4;\n        pbVar11 = pbVar12;\n        pbVar14 = &DAT_0004c8bd;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);\n        bVar17 = false;\n        bVar16 = (!bVar16 && !bVar18) == bVar16;\n        if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }\n      }\n      if ((*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)) break;\n      *local_ec = iVar3;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }\n    goto LAB_00017428;\n  }" (if "if") (parenthesized_expression "(-1 < local_e8)" (( "(") (binary_expression "-1 < local_e8" (number_literal "-1") (< "<") (identifier "local_e8")) () ")")) (compound_statement "{\n    while( true ) {\n      piVar1 = local_f0 + 1;\n      iVar3 = *local_f0;\n      pbVar12 = *(byte **)(iVar3 + 4);\n      local_f0 = piVar1;\n      if ((pbVar12 == (byte *)0x0) || (*pbVar12 == 0)) break;\n      bVar16 = false;\n      bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0;\n      if (!bVar18) {\n        iVar8 = 4;\n        pbVar11 = pbVar12;\n        pbVar14 = &DAT_0004c8bd;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);\n        bVar17 = false;\n        bVar16 = (!bVar16 && !bVar18) == bVar16;\n        if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }\n      }\n      if ((*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)) break;\n      *local_ec = iVar3;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }\n    goto LAB_00017428;\n  }" ({ "{") (while_statement "while( true ) {\n      piVar1 = local_f0 + 1;\n      iVar3 = *local_f0;\n      pbVar12 = *(byte **)(iVar3 + 4);\n      local_f0 = piVar1;\n      if ((pbVar12 == (byte *)0x0) || (*pbVar12 == 0)) break;\n      bVar16 = false;\n      bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0;\n      if (!bVar18) {\n        iVar8 = 4;\n        pbVar11 = pbVar12;\n        pbVar14 = &DAT_0004c8bd;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);\n        bVar17 = false;\n        bVar16 = (!bVar16 && !bVar18) == bVar16;\n        if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }\n      }\n      if ((*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)) break;\n      *local_ec = iVar3;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n      piVar1 = local_f0 + 1;\n      iVar3 = *local_f0;\n      pbVar12 = *(byte **)(iVar3 + 4);\n      local_f0 = piVar1;\n      if ((pbVar12 == (byte *)0x0) || (*pbVar12 == 0)) break;\n      bVar16 = false;\n      bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0;\n      if (!bVar18) {\n        iVar8 = 4;\n        pbVar11 = pbVar12;\n        pbVar14 = &DAT_0004c8bd;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);\n        bVar17 = false;\n        bVar16 = (!bVar16 && !bVar18) == bVar16;\n        if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }\n      }\n      if ((*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)) break;\n      *local_ec = iVar3;\n      local_ec = local_ec + 1;\n      local_e8 = local_e8 + -1;\n      if (local_e8 < 0) goto LAB_000174ab;\n    }" ({ "{") (expression_statement "piVar1 = local_f0 + 1;" (assignment_expression "piVar1 = local_f0 + 1" (identifier "piVar1") (= "=") (binary_expression "local_f0 + 1" (identifier "local_f0") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "iVar3 = *local_f0;" (assignment_expression "iVar3 = *local_f0" (identifier "iVar3") (= "=") (pointer_expression "*local_f0" (* "*") (identifier "local_f0"))) (; ";")) (expression_statement "pbVar12 = *(byte **)(iVar3 + 4);" (assignment_expression "pbVar12 = *(byte **)(iVar3 + 4)" (identifier "pbVar12") (= "=") (pointer_expression "*(byte **)(iVar3 + 4)" (* "*") (cast_expression "(byte **)(iVar3 + 4)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar3 + 4)" (( "(") (binary_expression "iVar3 + 4" (identifier "iVar3") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (expression_statement "local_f0 = piVar1;" (assignment_expression "local_f0 = piVar1" (identifier "local_f0") (= "=") (identifier "piVar1")) (; ";")) (if_statement "if ((pbVar12 == (byte *)0x0) || (*pbVar12 == 0)) break;" (if "if") (parenthesized_expression "((pbVar12 == (byte *)0x0) || (*pbVar12 == 0))" (( "(") (binary_expression "(pbVar12 == (byte *)0x0) || (*pbVar12 == 0)" (parenthesized_expression "(pbVar12 == (byte *)0x0)" (( "(") (binary_expression "pbVar12 == (byte *)0x0" (identifier "pbVar12") (== "==") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (|| "||") (parenthesized_expression "(*pbVar12 == 0)" (( "(") (binary_expression "*pbVar12 == 0" (pointer_expression "*pbVar12" (* "*") (identifier "pbVar12")) (== "==") (number_literal "0")) () ")"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "bVar16 = false;" (assignment_expression "bVar16 = false" (identifier "bVar16") (= "=") (false "false")) (; ";")) (expression_statement "bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0;" (assignment_expression "bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0" (identifier "bVar18") (= "=") (binary_expression "(*(uint *)(iVar3 + 0xc) & 0x104) == 0" (parenthesized_expression "(*(uint *)(iVar3 + 0xc) & 0x104)" (( "(") (binary_expression "*(uint *)(iVar3 + 0xc) & 0x104" (pointer_expression "*(uint *)(iVar3 + 0xc)" (* "*") (cast_expression "(uint *)(iVar3 + 0xc)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar3 + 0xc)" (( "(") (binary_expression "iVar3 + 0xc" (identifier "iVar3") (+ "+") (number_literal "0xc")) () ")")))) (& "&") (number_literal "0x104")) () ")")) (== "==") (number_literal "0"))) (; ";")) (if_statement "if (!bVar18) {\n        iVar8 = 4;\n        pbVar11 = pbVar12;\n        pbVar14 = &DAT_0004c8bd;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);\n        bVar17 = false;\n        bVar16 = (!bVar16 && !bVar18) == bVar16;\n        if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }\n      }" (if "if") (parenthesized_expression "(!bVar18)" (( "(") (unary_expression "!bVar18" (! "!") (identifier "bVar18")) () ")")) (compound_statement "{\n        iVar8 = 4;\n        pbVar11 = pbVar12;\n        pbVar14 = &DAT_0004c8bd;\n        do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);\n        bVar17 = false;\n        bVar16 = (!bVar16 && !bVar18) == bVar16;\n        if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }\n      }" ({ "{") (expression_statement "iVar8 = 4;" (assignment_expression "iVar8 = 4" (identifier "iVar8") (= "=") (number_literal "4")) (; ";")) (expression_statement "pbVar11 = pbVar12;" (assignment_expression "pbVar11 = pbVar12" (identifier "pbVar11") (= "=") (identifier "pbVar12")) (; ";")) (expression_statement "pbVar14 = &DAT_0004c8bd;" (assignment_expression "pbVar14 = &DAT_0004c8bd" (identifier "pbVar14") (= "=") (pointer_expression "&DAT_0004c8bd" (& "&") (identifier "DAT_0004c8bd"))) (; ";")) (do_statement "do {\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        } while (bVar18);" (do "do") (compound_statement "{\n          if (iVar8 == 0) break;\n          iVar8 = iVar8 + -1;\n          bVar16 = *pbVar11 < *pbVar14;\n          bVar18 = *pbVar11 == *pbVar14;\n          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;\n        }" ({ "{") (if_statement "if (iVar8 == 0) break;" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" (identifier "iVar8") (= "=") (binary_expression "iVar8 + -1" (identifier "iVar8") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar16 = *pbVar11 < *pbVar14;" (assignment_expression "bVar16 = *pbVar11 < *pbVar14" (identifier "bVar16") (= "=") (binary_expression "*pbVar11 < *pbVar14" (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")) (< "<") (pointer_expression "*pbVar14" (* "*") (identifier "pbVar14")))) (; ";")) (expression_statement "bVar18 = *pbVar11 == *pbVar14;" (assignment_expression "bVar18 = *pbVar11 == *pbVar14" (identifier "bVar18") (= "=") (binary_expression "*pbVar11 == *pbVar14" (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")) (== "==") (pointer_expression "*pbVar14" (* "*") (identifier "pbVar14")))) (; ";")) (expression_statement "pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1" (identifier "pbVar11") (= "=") (binary_expression "pbVar11 + (uint)bVar19 * -2 + 1" (binary_expression "pbVar11 + (uint)bVar19 * -2" (identifier "pbVar11") (+ "+") (binary_expression "(uint)bVar19 * -2" (cast_expression "(uint)bVar19" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar19")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;" (assignment_expression "pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1" (identifier "pbVar14") (= "=") (binary_expression "pbVar14 + (uint)bVar19 * -2 + 1" (binary_expression "pbVar14 + (uint)bVar19 * -2" (identifier "pbVar14") (+ "+") (binary_expression "(uint)bVar19 * -2" (cast_expression "(uint)bVar19" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar19")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar18)" (( "(") (identifier "bVar18") () ")")) (; ";")) (expression_statement "bVar17 = false;" (assignment_expression "bVar17 = false" (identifier "bVar17") (= "=") (false "false")) (; ";")) (expression_statement "bVar16 = (!bVar16 && !bVar18) == bVar16;" (assignment_expression "bVar16 = (!bVar16 && !bVar18) == bVar16" (identifier "bVar16") (= "=") (binary_expression "(!bVar16 && !bVar18) == bVar16" (parenthesized_expression "(!bVar16 && !bVar18)" (( "(") (binary_expression "!bVar16 && !bVar18" (unary_expression "!bVar16" (! "!") (identifier "bVar16")) (&& "&&") (unary_expression "!bVar18" (! "!") (identifier "bVar18"))) () ")")) (== "==") (identifier "bVar16"))) (; ";")) (if_statement "if (!bVar16) {\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }" (if "if") (parenthesized_expression "(!bVar16)" (( "(") (unary_expression "!bVar16" (! "!") (identifier "bVar16")) () ")")) (compound_statement "{\n          iVar8 = 5;\n          pbVar11 = &DAT_0004c8c2;\n          do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);\n          if ((!bVar17 && !bVar16) != bVar17) break;\n        }" ({ "{") (expression_statement "iVar8 = 5;" (assignment_expression "iVar8 = 5" (identifier "iVar8") (= "=") (number_literal "5")) (; ";")) (expression_statement "pbVar11 = &DAT_0004c8c2;" (assignment_expression "pbVar11 = &DAT_0004c8c2" (identifier "pbVar11") (= "=") (pointer_expression "&DAT_0004c8c2" (& "&") (identifier "DAT_0004c8c2"))) (; ";")) (do_statement "do {\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          } while (bVar16);" (do "do") (compound_statement "{\n            if (iVar8 == 0) break;\n            iVar8 = iVar8 + -1;\n            bVar17 = *pbVar12 < *pbVar11;\n            bVar16 = *pbVar12 == *pbVar11;\n            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;\n            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;\n          }" ({ "{") (if_statement "if (iVar8 == 0) break;" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar8 = iVar8 + -1;" (assignment_expression "iVar8 = iVar8 + -1" (identifier "iVar8") (= "=") (binary_expression "iVar8 + -1" (identifier "iVar8") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar17 = *pbVar12 < *pbVar11;" (assignment_expression "bVar17 = *pbVar12 < *pbVar11" (identifier "bVar17") (= "=") (binary_expression "*pbVar12 < *pbVar11" (pointer_expression "*pbVar12" (* "*") (identifier "pbVar12")) (< "<") (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")))) (; ";")) (expression_statement "bVar16 = *pbVar12 == *pbVar11;" (assignment_expression "bVar16 = *pbVar12 == *pbVar11" (identifier "bVar16") (= "=") (binary_expression "*pbVar12 == *pbVar11" (pointer_expression "*pbVar12" (* "*") (identifier "pbVar12")) (== "==") (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")))) (; ";")) (expression_statement "pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;" (assignment_expression "pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1" (identifier "pbVar12") (= "=") (binary_expression "pbVar12 + (uint)bVar19 * -2 + 1" (binary_expression "pbVar12 + (uint)bVar19 * -2" (identifier "pbVar12") (+ "+") (binary_expression "(uint)bVar19 * -2" (cast_expression "(uint)bVar19" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar19")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1" (identifier "pbVar11") (= "=") (binary_expression "pbVar11 + (uint)bVar19 * -2 + 1" (binary_expression "pbVar11 + (uint)bVar19 * -2" (identifier "pbVar11") (+ "+") (binary_expression "(uint)bVar19 * -2" (cast_expression "(uint)bVar19" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar19")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar16)" (( "(") (identifier "bVar16") () ")")) (; ";")) (if_statement "if ((!bVar17 && !bVar16) != bVar17) break;" (if "if") (parenthesized_expression "((!bVar17 && !bVar16) != bVar17)" (( "(") (binary_expression "(!bVar17 && !bVar16) != bVar17" (parenthesized_expression "(!bVar17 && !bVar16)" (( "(") (binary_expression "!bVar17 && !bVar16" (unary_expression "!bVar17" (! "!") (identifier "bVar17")) (&& "&&") (unary_expression "!bVar16" (! "!") (identifier "bVar16"))) () ")")) (!= "!=") (identifier "bVar17")) () ")")) (break_statement "break;" (break "break") (; ";"))) (} "}"))) (} "}"))) (if_statement "if ((*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)) break;" (if "if") (parenthesized_expression "((*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0))" (( "(") (binary_expression "(*(undefined **)(iVar3 + 0x10) == puVar4) ||\n         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)" (parenthesized_expression "(*(undefined **)(iVar3 + 0x10) == puVar4)" (( "(") (binary_expression "*(undefined **)(iVar3 + 0x10) == puVar4" (pointer_expression "*(undefined **)(iVar3 + 0x10)" (* "*") (cast_expression "(undefined **)(iVar3 + 0x10)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar3 + 0x10)" (( "(") (binary_expression "iVar3 + 0x10" (identifier "iVar3") (+ "+") (number_literal "0x10")) () ")")))) (== "==") (identifier "puVar4")) () ")")) (|| "||") (parenthesized_expression "(((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)" (( "(") (binary_expression "((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0" (parenthesized_expression "((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10)" (( "(") (binary_expression "(*(undefined **)(iVar3 + 0x10))[0x15] & 0x10" (subscript_expression "(*(undefined **)(iVar3 + 0x10))[0x15]" (parenthesized_expression "(*(undefined **)(iVar3 + 0x10))" (( "(") (pointer_expression "*(undefined **)(iVar3 + 0x10)" (* "*") (cast_expression "(undefined **)(iVar3 + 0x10)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar3 + 0x10)" (( "(") (binary_expression "iVar3 + 0x10" (identifier "iVar3") (+ "+") (number_literal "0x10")) () ")")))) () ")")) ([ "[") (number_literal "0x15") (] "]")) (& "&") (number_literal "0x10")) () ")")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "*local_ec = iVar3;" (assignment_expression "*local_ec = iVar3" (pointer_expression "*local_ec" (* "*") (identifier "local_ec")) (= "=") (identifier "iVar3")) (; ";")) (expression_statement "local_ec = local_ec + 1;" (assignment_expression "local_ec = local_ec + 1" (identifier "local_ec") (= "=") (binary_expression "local_ec + 1" (identifier "local_ec") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "local_e8 = local_e8 + -1;" (assignment_expression "local_e8 = local_e8 + -1" (identifier "local_e8") (= "=") (binary_expression "local_e8 + -1" (identifier "local_e8") (+ "+") (number_literal "-1"))) (; ";")) (if_statement "if (local_e8 < 0) goto LAB_000174ab;" (if "if") (parenthesized_expression "(local_e8 < 0)" (( "(") (binary_expression "local_e8 < 0" (identifier "local_e8") (< "<") (number_literal "0")) () ")")) (goto_statement "goto LAB_000174ab;" (goto "goto") (statement_identifier "LAB_000174ab") (; ";"))) (} "}"))) (goto_statement "goto LAB_00017428;" (goto "goto") (statement_identifier "LAB_00017428") (; ";")) (} "}"))) (labeled_statement "LAB_000174ab:\n  DAT_00071060 = (int)local_ec - (int)__dest >> 2;" (statement_identifier "LAB_000174ab") (: ":") (expression_statement "DAT_00071060 = (int)local_ec - (int)__dest >> 2;" (assignment_expression "DAT_00071060 = (int)local_ec - (int)__dest >> 2" (identifier "DAT_00071060") (= "=") (binary_expression "(int)local_ec - (int)__dest >> 2" (binary_expression "(int)local_ec - (int)__dest" (cast_expression "(int)local_ec" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_ec")) (- "-") (cast_expression "(int)__dest" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "__dest"))) (>> ">>") (number_literal "2"))) (; ";"))) (if_statement "if (0 < DAT_00071054) {\n    DAT_00071060 = DAT_00071060 + DAT_00071054;\n    pvVar10 = DAT_00071058;\n    do {\n      *local_ec = (int)pvVar10;\n      local_ec = local_ec + 1;\n      pvVar10 = (void *)((int)pvVar10 + 0x18);\n    } while (__dest + DAT_00071060 != local_ec);\n  }" (if "if") (parenthesized_expression "(0 < DAT_00071054)" (( "(") (binary_expression "0 < DAT_00071054" (number_literal "0") (< "<") (identifier "DAT_00071054")) () ")")) (compound_statement "{\n    DAT_00071060 = DAT_00071060 + DAT_00071054;\n    pvVar10 = DAT_00071058;\n    do {\n      *local_ec = (int)pvVar10;\n      local_ec = local_ec + 1;\n      pvVar10 = (void *)((int)pvVar10 + 0x18);\n    } while (__dest + DAT_00071060 != local_ec);\n  }" ({ "{") (expression_statement "DAT_00071060 = DAT_00071060 + DAT_00071054;" (assignment_expression "DAT_00071060 = DAT_00071060 + DAT_00071054" (identifier "DAT_00071060") (= "=") (binary_expression "DAT_00071060 + DAT_00071054" (identifier "DAT_00071060") (+ "+") (identifier "DAT_00071054"))) (; ";")) (expression_statement "pvVar10 = DAT_00071058;" (assignment_expression "pvVar10 = DAT_00071058" (identifier "pvVar10") (= "=") (identifier "DAT_00071058")) (; ";")) (do_statement "do {\n      *local_ec = (int)pvVar10;\n      local_ec = local_ec + 1;\n      pvVar10 = (void *)((int)pvVar10 + 0x18);\n    } while (__dest + DAT_00071060 != local_ec);" (do "do") (compound_statement "{\n      *local_ec = (int)pvVar10;\n      local_ec = local_ec + 1;\n      pvVar10 = (void *)((int)pvVar10 + 0x18);\n    }" ({ "{") (expression_statement "*local_ec = (int)pvVar10;" (assignment_expression "*local_ec = (int)pvVar10" (pointer_expression "*local_ec" (* "*") (identifier "local_ec")) (= "=") (cast_expression "(int)pvVar10" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pvVar10"))) (; ";")) (expression_statement "local_ec = local_ec + 1;" (assignment_expression "local_ec = local_ec + 1" (identifier "local_ec") (= "=") (binary_expression "local_ec + 1" (identifier "local_ec") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pvVar10 = (void *)((int)pvVar10 + 0x18);" (assignment_expression "pvVar10 = (void *)((int)pvVar10 + 0x18)" (identifier "pvVar10") (= "=") (cast_expression "(void *)((int)pvVar10 + 0x18)" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pvVar10 + 0x18)" (( "(") (binary_expression "(int)pvVar10 + 0x18" (cast_expression "(int)pvVar10" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pvVar10")) (+ "+") (number_literal "0x18")) () ")")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(__dest + DAT_00071060 != local_ec)" (( "(") (binary_expression "__dest + DAT_00071060 != local_ec" (binary_expression "__dest + DAT_00071060" (identifier "__dest") (+ "+") (identifier "DAT_00071060")) (!= "!=") (identifier "local_ec")) () ")")) (; ";")) (} "}"))) (expression_statement "qsort(__dest,DAT_00071060,4,FUN_00015990);" (call_expression "qsort(__dest,DAT_00071060,4,FUN_00015990)" (identifier "qsort") (argument_list "(__dest,DAT_00071060,4,FUN_00015990)" (( "(") (identifier "__dest") (, ",") (identifier "DAT_00071060") (, ",") (number_literal "4") (, ",") (identifier "FUN_00015990") () ")"))) (; ";")) (expression_statement "init_disassemble_info(local_b4,*(undefined4 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0);" (call_expression "init_disassemble_info(local_b4,*(undefined4 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0)" (identifier "init_disassemble_info") (argument_list "(local_b4,*(undefined4 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0)" (( "(") (identifier "local_b4") (, ",") (pointer_expression "*(undefined4 *)PTR_stdout_0006ffdc" (* "*") (cast_expression "(undefined4 *)PTR_stdout_0006ffdc" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_stdout_0006ffdc"))) (, ",") (identifier "PTR_fprintf_0006ffd0") () ")"))) (; ";")) (expression_statement "local_ac = local_d0;" (assignment_expression "local_ac = local_d0" (identifier "local_ac") (= "=") (identifier "local_d0")) (; ";")) (expression_statement "local_68 = FUN_000153c0;" (assignment_expression "local_68 = FUN_000153c0" (identifier "local_68") (= "=") (identifier "FUN_000153c0")) (; ";")) (expression_statement "local_64 = FUN_00014c20;" (assignment_expression "local_64 = FUN_00014c20" (identifier "local_64") (= "=") (identifier "FUN_00014c20")) (; ";")) (expression_statement "local_c8 = 0;" (assignment_expression "local_c8 = 0" (identifier "local_c8") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_c4 = (void *)0x0;" (assignment_expression "local_c4 = (void *)0x0" (identifier "local_c4") (= "=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_c0 = 0;" (assignment_expression "local_c0 = 0" (identifier "local_c0") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_b8 = 0;" (assignment_expression "local_b8 = 0" (identifier "local_b8") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_d0[0] = param_1;" (assignment_expression "local_d0[0] = param_1" (subscript_expression "local_d0[0]" (identifier "local_d0") ([ "[") (number_literal "0") (] "]")) (= "=") (identifier "param_1")) (; ";")) (if_statement "if (DAT_00071074 != 0) {\n    iVar8 = bfd_scan_arch(DAT_00071074);\n    iVar3 = DAT_00071074;\n    if (iVar8 == 0) {\n      uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    \n      FUN_00045180(uVar2,iVar3);\n    }\n    param_1[0x20] = iVar8;\n  }" (if "if") (parenthesized_expression "(DAT_00071074 != 0)" (( "(") (binary_expression "DAT_00071074 != 0" (identifier "DAT_00071074") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    iVar8 = bfd_scan_arch(DAT_00071074);\n    iVar3 = DAT_00071074;\n    if (iVar8 == 0) {\n      uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    \n      FUN_00045180(uVar2,iVar3);\n    }\n    param_1[0x20] = iVar8;\n  }" ({ "{") (expression_statement "iVar8 = bfd_scan_arch(DAT_00071074);" (assignment_expression "iVar8 = bfd_scan_arch(DAT_00071074)" (identifier "iVar8") (= "=") (call_expression "bfd_scan_arch(DAT_00071074)" (identifier "bfd_scan_arch") (argument_list "(DAT_00071074)" (( "(") (identifier "DAT_00071074") () ")")))) (; ";")) (expression_statement "iVar3 = DAT_00071074;" (assignment_expression "iVar3 = DAT_00071074" (identifier "iVar3") (= "=") (identifier "DAT_00071074")) (; ";")) (if_statement "if (iVar8 == 0) {\n      uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    \n      FUN_00045180(uVar2,iVar3);\n    }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest);\n                    \n      FUN_00045180(uVar2,iVar3);\n    }" ({ "{") (expression_statement "uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest);" (assignment_expression "uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest)" (identifier "uVar2") (= "=") (call_expression "dcgettext(0,"can\'t use supplied machine %s",5,__dest)" (identifier "dcgettext") (argument_list "(0,"can\'t use supplied machine %s",5,__dest)" (( "(") (number_literal "0") (, ",") (string_literal ""can\'t use supplied machine %s"" (" """) (string_content "can") (escape_sequence "\'") (string_content "t use supplied machine %s") (" """)) (, ",") (number_literal "5") (, ",") (identifier "__dest") () ")")))) (; ";")) (expression_statement "FUN_00045180(uVar2,iVar3);" (call_expression "FUN_00045180(uVar2,iVar3)" (identifier "FUN_00045180") (argument_list "(uVar2,iVar3)" (( "(") (identifier "uVar2") (, ",") (identifier "iVar3") () ")"))) (; ";")) (} "}"))) (expression_statement "param_1[0x20] = iVar8;" (assignment_expression "param_1[0x20] = iVar8" (subscript_expression "param_1[0x20]" (identifier "param_1") ([ "[") (number_literal "0x20") (] "]")) (= "=") (identifier "iVar8")) (; ";")) (} "}"))) (if_statement "if (DAT_00070228 != 2) {\n    puVar5 = (undefined4 *)xmalloc(0x1c4);\n    puVar13 = (undefined4 *)param_1[1];\n    iVar3 = (int)puVar5 - (int)((uint)(puVar5 + 1) & 0xfffffffc);\n    *puVar5 = *puVar13;\n    puVar5[0x70] = puVar13[0x70];\n    puVar13 = (undefined4 *)((int)puVar13 - iVar3);\n    puVar15 = (undefined4 *)((uint)(puVar5 + 1) & 0xfffffffc);\n    for (uVar9 = iVar3 + 0x1c4U >> 2; uVar9 != 0; uVar9 = uVar9 - 1) {\n      *puVar15 = *puVar13;\n      puVar13 = puVar13 + (uint)bVar19 * -2 + 1;\n      puVar15 = puVar15 + (uint)bVar19 * -2 + 1;\n    }\n    param_1[1] = puVar5;\n    puVar5[2] = DAT_00070228;\n  }" (if "if") (parenthesized_expression "(DAT_00070228 != 2)" (( "(") (binary_expression "DAT_00070228 != 2" (identifier "DAT_00070228") (!= "!=") (number_literal "2")) () ")")) (compound_statement "{\n    puVar5 = (undefined4 *)xmalloc(0x1c4);\n    puVar13 = (undefined4 *)param_1[1];\n    iVar3 = (int)puVar5 - (int)((uint)(puVar5 + 1) & 0xfffffffc);\n    *puVar5 = *puVar13;\n    puVar5[0x70] = puVar13[0x70];\n    puVar13 = (undefined4 *)((int)puVar13 - iVar3);\n    puVar15 = (undefined4 *)((uint)(puVar5 + 1) & 0xfffffffc);\n    for (uVar9 = iVar3 + 0x1c4U >> 2; uVar9 != 0; uVar9 = uVar9 - 1) {\n      *puVar15 = *puVar13;\n      puVar13 = puVar13 + (uint)bVar19 * -2 + 1;\n      puVar15 = puVar15 + (uint)bVar19 * -2 + 1;\n    }\n    param_1[1] = puVar5;\n    puVar5[2] = DAT_00070228;\n  }" ({ "{") (expression_statement "puVar5 = (undefined4 *)xmalloc(0x1c4);" (assignment_expression "puVar5 = (undefined4 *)xmalloc(0x1c4)" (identifier "puVar5") (= "=") (cast_expression "(undefined4 *)xmalloc(0x1c4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "xmalloc(0x1c4)" (identifier "xmalloc") (argument_list "(0x1c4)" (( "(") (number_literal "0x1c4") () ")"))))) (; ";")) (expression_statement "puVar13 = (undefined4 *)param_1[1];" (assignment_expression "puVar13 = (undefined4 *)param_1[1]" (identifier "puVar13") (= "=") (cast_expression "(undefined4 *)param_1[1]" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")))) (; ";")) (expression_statement "iVar3 = (int)puVar5 - (int)((uint)(puVar5 + 1) & 0xfffffffc);" (assignment_expression "iVar3 = (int)puVar5 - (int)((uint)(puVar5 + 1) & 0xfffffffc)" (identifier "iVar3") (= "=") (binary_expression "(int)puVar5 - (int)((uint)(puVar5 + 1) & 0xfffffffc)" (cast_expression "(int)puVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar5")) (- "-") (cast_expression "(int)((uint)(puVar5 + 1) & 0xfffffffc)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((uint)(puVar5 + 1) & 0xfffffffc)" (( "(") (binary_expression "(uint)(puVar5 + 1) & 0xfffffffc" (call_expression "(uint)(puVar5 + 1)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(puVar5 + 1)" (( "(") (binary_expression "puVar5 + 1" (identifier "puVar5") (+ "+") (number_literal "1")) () ")"))) (& "&") (number_literal "0xfffffffc")) () ")"))))) (; ";")) (expression_statement "*puVar5 = *puVar13;" (assignment_expression "*puVar5 = *puVar13" (pointer_expression "*puVar5" (* "*") (identifier "puVar5")) (= "=") (pointer_expression "*puVar13" (* "*") (identifier "puVar13"))) (; ";")) (expression_statement "puVar5[0x70] = puVar13[0x70];" (assignment_expression "puVar5[0x70] = puVar13[0x70]" (subscript_expression "puVar5[0x70]" (identifier "puVar5") ([ "[") (number_literal "0x70") (] "]")) (= "=") (subscript_expression "puVar13[0x70]" (identifier "puVar13") ([ "[") (number_literal "0x70") (] "]"))) (; ";")) (expression_statement "puVar13 = (undefined4 *)((int)puVar13 - iVar3);" (assignment_expression "puVar13 = (undefined4 *)((int)puVar13 - iVar3)" (identifier "puVar13") (= "=") (cast_expression "(undefined4 *)((int)puVar13 - iVar3)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)puVar13 - iVar3)" (( "(") (binary_expression "(int)puVar13 - iVar3" (cast_expression "(int)puVar13" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar13")) (- "-") (identifier "iVar3")) () ")")))) (; ";")) (expression_statement "puVar15 = (undefined4 *)((uint)(puVar5 + 1) & 0xfffffffc);" (assignment_expression "puVar15 = (undefined4 *)((uint)(puVar5 + 1) & 0xfffffffc)" (identifier "puVar15") (= "=") (cast_expression "(undefined4 *)((uint)(puVar5 + 1) & 0xfffffffc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)(puVar5 + 1) & 0xfffffffc)" (( "(") (binary_expression "(uint)(puVar5 + 1) & 0xfffffffc" (call_expression "(uint)(puVar5 + 1)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(puVar5 + 1)" (( "(") (binary_expression "puVar5 + 1" (identifier "puVar5") (+ "+") (number_literal "1")) () ")"))) (& "&") (number_literal "0xfffffffc")) () ")")))) (; ";")) (for_statement "for (uVar9 = iVar3 + 0x1c4U >> 2; uVar9 != 0; uVar9 = uVar9 - 1) {\n      *puVar15 = *puVar13;\n      puVar13 = puVar13 + (uint)bVar19 * -2 + 1;\n      puVar15 = puVar15 + (uint)bVar19 * -2 + 1;\n    }" (for "for") (( "(") (assignment_expression "uVar9 = iVar3 + 0x1c4U >> 2" (identifier "uVar9") (= "=") (binary_expression "iVar3 + 0x1c4U >> 2" (binary_expression "iVar3 + 0x1c4U" (identifier "iVar3") (+ "+") (number_literal "0x1c4U")) (>> ">>") (number_literal "2"))) (; ";") (binary_expression "uVar9 != 0" (identifier "uVar9") (!= "!=") (number_literal "0")) (; ";") (assignment_expression "uVar9 = uVar9 - 1" (identifier "uVar9") (= "=") (binary_expression "uVar9 - 1" (identifier "uVar9") (- "-") (number_literal "1"))) () ")") (compound_statement "{\n      *puVar15 = *puVar13;\n      puVar13 = puVar13 + (uint)bVar19 * -2 + 1;\n      puVar15 = puVar15 + (uint)bVar19 * -2 + 1;\n    }" ({ "{") (expression_statement "*puVar15 = *puVar13;" (assignment_expression "*puVar15 = *puVar13" (pointer_expression "*puVar15" (* "*") (identifier "puVar15")) (= "=") (pointer_expression "*puVar13" (* "*") (identifier "puVar13"))) (; ";")) (expression_statement "puVar13 = puVar13 + (uint)bVar19 * -2 + 1;" (assignment_expression "puVar13 = puVar13 + (uint)bVar19 * -2 + 1" (identifier "puVar13") (= "=") (binary_expression "puVar13 + (uint)bVar19 * -2 + 1" (binary_expression "puVar13 + (uint)bVar19 * -2" (identifier "puVar13") (+ "+") (binary_expression "(uint)bVar19 * -2" (cast_expression "(uint)bVar19" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar19")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puVar15 = puVar15 + (uint)bVar19 * -2 + 1;" (assignment_expression "puVar15 = puVar15 + (uint)bVar19 * -2 + 1" (identifier "puVar15") (= "=") (binary_expression "puVar15 + (uint)bVar19 * -2 + 1" (binary_expression "puVar15 + (uint)bVar19 * -2" (identifier "puVar15") (+ "+") (binary_expression "(uint)bVar19 * -2" (cast_expression "(uint)bVar19" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar19")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (expression_statement "param_1[1] = puVar5;" (assignment_expression "param_1[1] = puVar5" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "puVar5")) (; ";")) (expression_statement "puVar5[2] = DAT_00070228;" (assignment_expression "puVar5[2] = DAT_00070228" (subscript_expression "puVar5[2]" (identifier "puVar5") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "DAT_00070228")) (; ";")) (} "}"))) (expression_statement "uVar2 = bfd_get_mach(param_1);" (assignment_expression "uVar2 = bfd_get_mach(param_1)" (identifier "uVar2") (= "=") (call_expression "bfd_get_mach(param_1)" (identifier "bfd_get_mach") (argument_list "(param_1)" (( "(") (identifier "param_1") () ")")))) (; ";")) (expression_statement "iVar3 = *(int *)(param_1[1] + 8);" (assignment_expression "iVar3 = *(int *)(param_1[1] + 8)" (identifier "iVar3") (= "=") (pointer_expression "*(int *)(param_1[1] + 8)" (* "*") (cast_expression "(int *)(param_1[1] + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1[1] + 8)" (( "(") (binary_expression "param_1[1] + 8" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) (+ "+") (number_literal "8")) () ")"))))) (; ";")) (expression_statement "uVar7 = bfd_get_arch(param_1);" (assignment_expression "uVar7 = bfd_get_arch(param_1)" (identifier "uVar7") (= "=") (call_expression "bfd_get_arch(param_1)" (identifier "bfd_get_arch") (argument_list "(param_1)" (( "(") (identifier "param_1") () ")")))) (; ";")) (expression_statement "local_bc = disassembler(uVar7,iVar3 == 0,uVar2,param_1);" (assignment_expression "local_bc = disassembler(uVar7,iVar3 == 0,uVar2,param_1)" (identifier "local_bc") (= "=") (call_expression "disassembler(uVar7,iVar3 == 0,uVar2,param_1)" (identifier "disassembler") (argument_list "(uVar7,iVar3 == 0,uVar2,param_1)" (( "(") (identifier "uVar7") (, ",") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) (, ",") (identifier "uVar2") (, ",") (identifier "param_1") () ")")))) (; ";")) (if_statement "if (local_bc == 0) {\n    uVar2 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar2,0);\n    uVar7 = dcgettext(0,"can\'t disassemble for architecture %s\n",5);\n    FUN_000451b0(uVar7,uVar2);\n    DAT_00071110 = 1;\n  }\n  else {\n    local_a8 = *(undefined4 *)(param_1[1] + 4);\n    local_a4 = bfd_get_arch(param_1);\n    local_a0 = bfd_get_mach(param_1);\n    local_24 = DAT_00071070;\n    local_44 = bfd_octets_per_byte(param_1);\n    local_40 = 8;\n    local_3c = 3;\n    local_38 = 0;\n    if (*(int *)(param_1[1] + 8) == 0) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (*(int *)(param_1[1] + 8) == 1) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }\n    disassemble_init_for_target(local_b4);\n    iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n    if (iVar3 < 0) {\n      if (DAT_000710f0 != 0) {\nLAB_00017bfe:\n                    \n        FUN_000450f0(*param_1);\n      }\n    }\n    else if (iVar3 != 0) {\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }\n    local_84 = DAT_00071064;\n    local_7c = DAT_00071060;\n    bfd_map_over_sections(param_1,FUN_00018770,local_b4);\n    if (local_c4 != (void *)0x0) {\n      free(local_c4);\n    }\n    free(DAT_00071064);\n  }" (if "if") (parenthesized_expression "(local_bc == 0)" (( "(") (binary_expression "local_bc == 0" (identifier "local_bc") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    uVar2 = bfd_get_arch(param_1);\n    uVar2 = bfd_printable_arch_mach(uVar2,0);\n    uVar7 = dcgettext(0,"can\'t disassemble for architecture %s\n",5);\n    FUN_000451b0(uVar7,uVar2);\n    DAT_00071110 = 1;\n  }" ({ "{") (expression_statement "uVar2 = bfd_get_arch(param_1);" (assignment_expression "uVar2 = bfd_get_arch(param_1)" (identifier "uVar2") (= "=") (call_expression "bfd_get_arch(param_1)" (identifier "bfd_get_arch") (argument_list "(param_1)" (( "(") (identifier "param_1") () ")")))) (; ";")) (expression_statement "uVar2 = bfd_printable_arch_mach(uVar2,0);" (assignment_expression "uVar2 = bfd_printable_arch_mach(uVar2,0)" (identifier "uVar2") (= "=") (call_expression "bfd_printable_arch_mach(uVar2,0)" (identifier "bfd_printable_arch_mach") (argument_list "(uVar2,0)" (( "(") (identifier "uVar2") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "uVar7 = dcgettext(0,"can\'t disassemble for architecture %s\n",5);" (assignment_expression "uVar7 = dcgettext(0,"can\'t disassemble for architecture %s\n",5)" (identifier "uVar7") (= "=") (call_expression "dcgettext(0,"can\'t disassemble for architecture %s\n",5)" (identifier "dcgettext") (argument_list "(0,"can\'t disassemble for architecture %s\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""can\'t disassemble for architecture %s\n"" (" """) (string_content "can") (escape_sequence "\'") (string_content "t disassemble for architecture %s") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_000451b0(uVar7,uVar2);" (call_expression "FUN_000451b0(uVar7,uVar2)" (identifier "FUN_000451b0") (argument_list "(uVar7,uVar2)" (( "(") (identifier "uVar7") (, ",") (identifier "uVar2") () ")"))) (; ";")) (expression_statement "DAT_00071110 = 1;" (assignment_expression "DAT_00071110 = 1" (identifier "DAT_00071110") (= "=") (number_literal "1")) (; ";")) (} "}")) (else_clause "else {\n    local_a8 = *(undefined4 *)(param_1[1] + 4);\n    local_a4 = bfd_get_arch(param_1);\n    local_a0 = bfd_get_mach(param_1);\n    local_24 = DAT_00071070;\n    local_44 = bfd_octets_per_byte(param_1);\n    local_40 = 8;\n    local_3c = 3;\n    local_38 = 0;\n    if (*(int *)(param_1[1] + 8) == 0) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (*(int *)(param_1[1] + 8) == 1) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }\n    disassemble_init_for_target(local_b4);\n    iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n    if (iVar3 < 0) {\n      if (DAT_000710f0 != 0) {\nLAB_00017bfe:\n                    \n        FUN_000450f0(*param_1);\n      }\n    }\n    else if (iVar3 != 0) {\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }\n    local_84 = DAT_00071064;\n    local_7c = DAT_00071060;\n    bfd_map_over_sections(param_1,FUN_00018770,local_b4);\n    if (local_c4 != (void *)0x0) {\n      free(local_c4);\n    }\n    free(DAT_00071064);\n  }" (else "else") (compound_statement "{\n    local_a8 = *(undefined4 *)(param_1[1] + 4);\n    local_a4 = bfd_get_arch(param_1);\n    local_a0 = bfd_get_mach(param_1);\n    local_24 = DAT_00071070;\n    local_44 = bfd_octets_per_byte(param_1);\n    local_40 = 8;\n    local_3c = 3;\n    local_38 = 0;\n    if (*(int *)(param_1[1] + 8) == 0) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (*(int *)(param_1[1] + 8) == 1) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }\n    disassemble_init_for_target(local_b4);\n    iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);\n    if (iVar3 < 0) {\n      if (DAT_000710f0 != 0) {\nLAB_00017bfe:\n                    \n        FUN_000450f0(*param_1);\n      }\n    }\n    else if (iVar3 != 0) {\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }\n    local_84 = DAT_00071064;\n    local_7c = DAT_00071060;\n    bfd_map_over_sections(param_1,FUN_00018770,local_b4);\n    if (local_c4 != (void *)0x0) {\n      free(local_c4);\n    }\n    free(DAT_00071064);\n  }" ({ "{") (expression_statement "local_a8 = *(undefined4 *)(param_1[1] + 4);" (assignment_expression "local_a8 = *(undefined4 *)(param_1[1] + 4)" (identifier "local_a8") (= "=") (pointer_expression "*(undefined4 *)(param_1[1] + 4)" (* "*") (cast_expression "(undefined4 *)(param_1[1] + 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1[1] + 4)" (( "(") (binary_expression "param_1[1] + 4" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) (+ "+") (number_literal "4")) () ")"))))) (; ";")) (expression_statement "local_a4 = bfd_get_arch(param_1);" (assignment_expression "local_a4 = bfd_get_arch(param_1)" (identifier "local_a4") (= "=") (call_expression "bfd_get_arch(param_1)" (identifier "bfd_get_arch") (argument_list "(param_1)" (( "(") (identifier "param_1") () ")")))) (; ";")) (expression_statement "local_a0 = bfd_get_mach(param_1);" (assignment_expression "local_a0 = bfd_get_mach(param_1)" (identifier "local_a0") (= "=") (call_expression "bfd_get_mach(param_1)" (identifier "bfd_get_mach") (argument_list "(param_1)" (( "(") (identifier "param_1") () ")")))) (; ";")) (expression_statement "local_24 = DAT_00071070;" (assignment_expression "local_24 = DAT_00071070" (identifier "local_24") (= "=") (identifier "DAT_00071070")) (; ";")) (expression_statement "local_44 = bfd_octets_per_byte(param_1);" (assignment_expression "local_44 = bfd_octets_per_byte(param_1)" (identifier "local_44") (= "=") (call_expression "bfd_octets_per_byte(param_1)" (identifier "bfd_octets_per_byte") (argument_list "(param_1)" (( "(") (identifier "param_1") () ")")))) (; ";")) (expression_statement "local_40 = 8;" (assignment_expression "local_40 = 8" (identifier "local_40") (= "=") (number_literal "8")) (; ";")) (expression_statement "local_3c = 3;" (assignment_expression "local_3c = 3" (identifier "local_3c") (= "=") (number_literal "3")) (; ";")) (expression_statement "local_38 = 0;" (assignment_expression "local_38 = 0" (identifier "local_38") (= "=") (number_literal "0")) (; ";")) (if_statement "if (*(int *)(param_1[1] + 8) == 0) {\n      local_9c = 0;\n      local_48 = 0;\n    }\n    else if (*(int *)(param_1[1] + 8) == 1) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }" (if "if") (parenthesized_expression "(*(int *)(param_1[1] + 8) == 0)" (( "(") (binary_expression "*(int *)(param_1[1] + 8) == 0" (pointer_expression "*(int *)(param_1[1] + 8)" (* "*") (cast_expression "(int *)(param_1[1] + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1[1] + 8)" (( "(") (binary_expression "param_1[1] + 8" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) (+ "+") (number_literal "8")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      local_9c = 0;\n      local_48 = 0;\n    }" ({ "{") (expression_statement "local_9c = 0;" (assignment_expression "local_9c = 0" (identifier "local_9c") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_48 = 0;" (assignment_expression "local_48 = 0" (identifier "local_48") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else if (*(int *)(param_1[1] + 8) == 1) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }" (else "else") (if_statement "if (*(int *)(param_1[1] + 8) == 1) {\n      local_9c = 1;\n      local_48 = 1;\n    }\n    else {\n      local_9c = 2;\n    }" (if "if") (parenthesized_expression "(*(int *)(param_1[1] + 8) == 1)" (( "(") (binary_expression "*(int *)(param_1[1] + 8) == 1" (pointer_expression "*(int *)(param_1[1] + 8)" (* "*") (cast_expression "(int *)(param_1[1] + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1[1] + 8)" (( "(") (binary_expression "param_1[1] + 8" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) (+ "+") (number_literal "8")) () ")")))) (== "==") (number_literal "1")) () ")")) (compound_statement "{\n      local_9c = 1;\n      local_48 = 1;\n    }" ({ "{") (expression_statement "local_9c = 1;" (assignment_expression "local_9c = 1" (identifier "local_9c") (= "=") (number_literal "1")) (; ";")) (expression_statement "local_48 = 1;" (assignment_expression "local_48 = 1" (identifier "local_48") (= "=") (number_literal "1")) (; ";")) (} "}")) (else_clause "else {\n      local_9c = 2;\n    }" (else "else") (compound_statement "{\n      local_9c = 2;\n    }" ({ "{") (expression_statement "local_9c = 2;" (assignment_expression "local_9c = 2" (identifier "local_9c") (= "=") (number_literal "2")) (; ";")) (} "}")))))) (expression_statement "disassemble_init_for_target(local_b4);" (call_expression "disassemble_init_for_target(local_b4)" (identifier "disassemble_init_for_target") (argument_list "(local_b4)" (( "(") (identifier "local_b4") () ")"))) (; ";")) (expression_statement "iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);" (assignment_expression "iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(param_1[1] + 0x1b4))(param_1)" (parenthesized_expression "(**(code **)(param_1[1] + 0x1b4))" (( "(") (pointer_expression "**(code **)(param_1[1] + 0x1b4)" (* "*") (pointer_expression "*(code **)(param_1[1] + 0x1b4)" (* "*") (cast_expression "(code **)(param_1[1] + 0x1b4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1[1] + 0x1b4)" (( "(") (binary_expression "param_1[1] + 0x1b4" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) (+ "+") (number_literal "0x1b4")) () ")"))))) () ")")) (argument_list "(param_1)" (( "(") (identifier "param_1") () ")")))) (; ";")) (if_statement "if (iVar3 < 0) {\n      if (DAT_000710f0 != 0) {\nLAB_00017bfe:\n                    \n        FUN_000450f0(*param_1);\n      }\n    }\n    else if (iVar3 != 0) {\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }" (if "if") (parenthesized_expression "(iVar3 < 0)" (( "(") (binary_expression "iVar3 < 0" (identifier "iVar3") (< "<") (number_literal "0")) () ")")) (compound_statement "{\n      if (DAT_000710f0 != 0) {\nLAB_00017bfe:\n                    \n        FUN_000450f0(*param_1);\n      }\n    }" ({ "{") (if_statement "if (DAT_000710f0 != 0) {\nLAB_00017bfe:\n                    \n        FUN_000450f0(*param_1);\n      }" (if "if") (parenthesized_expression "(DAT_000710f0 != 0)" (( "(") (binary_expression "DAT_000710f0 != 0" (identifier "DAT_000710f0") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00017bfe:\n                    \n        FUN_000450f0(*param_1);\n      }" ({ "{") (labeled_statement "LAB_00017bfe:\n                    \n        FUN_000450f0(*param_1);" (statement_identifier "LAB_00017bfe") (: ":") (expression_statement "FUN_000450f0(*param_1);" (call_expression "FUN_000450f0(*param_1)" (identifier "FUN_000450f0") (argument_list "(*param_1)" (( "(") (pointer_expression "*param_1" (* "*") (identifier "param_1")) () ")"))) (; ";"))) (} "}"))) (} "}")) (else_clause "else if (iVar3 != 0) {\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }" (else "else") (if_statement "if (iVar3 != 0) {\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }" (if "if") (parenthesized_expression "(iVar3 != 0)" (( "(") (binary_expression "iVar3 != 0" (identifier "iVar3") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      local_c4 = (void *)xmalloc(iVar3);\n      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);\n      if ((int)local_c0 < 0) goto LAB_00017bfe;\n      qsort(local_c4,local_c0,4,FUN_000144e0);\n    }" ({ "{") (expression_statement "local_c4 = (void *)xmalloc(iVar3);" (assignment_expression "local_c4 = (void *)xmalloc(iVar3)" (identifier "local_c4") (= "=") (cast_expression "(void *)xmalloc(iVar3)" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "xmalloc(iVar3)" (identifier "xmalloc") (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))))) (; ";")) (expression_statement "local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);" (assignment_expression "local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c)" (identifier "local_c0") (= "=") (call_expression "(**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c)" (parenthesized_expression "(**(code **)(param_1[1] + 0x1b8))" (( "(") (pointer_expression "**(code **)(param_1[1] + 0x1b8)" (* "*") (pointer_expression "*(code **)(param_1[1] + 0x1b8)" (* "*") (cast_expression "(code **)(param_1[1] + 0x1b8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1[1] + 0x1b8)" (( "(") (binary_expression "param_1[1] + 0x1b8" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) (+ "+") (number_literal "0x1b8")) () ")"))))) () ")")) (argument_list "(param_1,local_c4,DAT_0007105c)" (( "(") (identifier "param_1") (, ",") (identifier "local_c4") (, ",") (identifier "DAT_0007105c") () ")")))) (; ";")) (if_statement "if ((int)local_c0 < 0) goto LAB_00017bfe;" (if "if") (parenthesized_expression "((int)local_c0 < 0)" (( "(") (binary_expression "(int)local_c0 < 0" (cast_expression "(int)local_c0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_c0")) (< "<") (number_literal "0")) () ")")) (goto_statement "goto LAB_00017bfe;" (goto "goto") (statement_identifier "LAB_00017bfe") (; ";"))) (expression_statement "qsort(local_c4,local_c0,4,FUN_000144e0);" (call_expression "qsort(local_c4,local_c0,4,FUN_000144e0)" (identifier "qsort") (argument_list "(local_c4,local_c0,4,FUN_000144e0)" (( "(") (identifier "local_c4") (, ",") (identifier "local_c0") (, ",") (number_literal "4") (, ",") (identifier "FUN_000144e0") () ")"))) (; ";")) (} "}"))))) (expression_statement "local_84 = DAT_00071064;" (assignment_expression "local_84 = DAT_00071064" (identifier "local_84") (= "=") (identifier "DAT_00071064")) (; ";")) (expression_statement "local_7c = DAT_00071060;" (assignment_expression "local_7c = DAT_00071060" (identifier "local_7c") (= "=") (identifier "DAT_00071060")) (; ";")) (expression_statement "bfd_map_over_sections(param_1,FUN_00018770,local_b4);" (call_expression "bfd_map_over_sections(param_1,FUN_00018770,local_b4)" (identifier "bfd_map_over_sections") (argument_list "(param_1,FUN_00018770,local_b4)" (( "(") (identifier "param_1") (, ",") (identifier "FUN_00018770") (, ",") (identifier "local_b4") () ")"))) (; ";")) (if_statement "if (local_c4 != (void *)0x0) {\n      free(local_c4);\n    }" (if "if") (parenthesized_expression "(local_c4 != (void *)0x0)" (( "(") (binary_expression "local_c4 != (void *)0x0" (identifier "local_c4") (!= "!=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      free(local_c4);\n    }" ({ "{") (expression_statement "free(local_c4);" (call_expression "free(local_c4)" (identifier "free") (argument_list "(local_c4)" (( "(") (identifier "local_c4") () ")"))) (; ";")) (} "}"))) (expression_statement "free(DAT_00071064);" (call_expression "free(DAT_00071064)" (identifier "free") (argument_list "(DAT_00071064)" (( "(") (identifier "DAT_00071064") () ")"))) (; ";")) (} "}")))) (labeled_statement "joined_r0x0001721a:\n  if (DAT_000710ac != 0) {\n    iVar3 = FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1);\n    if (iVar3 == 0) {\n      if (DAT_000710d0 == 0) {\n        FUN_00034950();\n        FUN_00015f30();\n      }\n    }\n    else {\n      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);\n      if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }\n    }\n  }" (statement_identifier "joined_r0x0001721a") (: ":") (if_statement "if (DAT_000710ac != 0) {\n    iVar3 = FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1);\n    if (iVar3 == 0) {\n      if (DAT_000710d0 == 0) {\n        FUN_00034950();\n        FUN_00015f30();\n      }\n    }\n    else {\n      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);\n      if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }\n    }\n  }" (if "if") (parenthesized_expression "(DAT_000710ac != 0)" (( "(") (binary_expression "DAT_000710ac != 0" (identifier "DAT_000710ac") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    iVar3 = FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1);\n    if (iVar3 == 0) {\n      if (DAT_000710d0 == 0) {\n        FUN_00034950();\n        FUN_00015f30();\n      }\n    }\n    else {\n      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);\n      if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }\n    }\n  }" ({ "{") (expression_statement "iVar3 = FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1);" (assignment_expression "iVar3 = FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1)" (identifier "iVar3") (= "=") (call_expression "FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1)" (identifier "FUN_00038fb0") (argument_list "(param_1,DAT_0007106c,DAT_00071068,1)" (( "(") (identifier "param_1") (, ",") (identifier "DAT_0007106c") (, ",") (identifier "DAT_00071068") (, ",") (number_literal "1") () ")")))) (; ";")) (if_statement "if (iVar3 == 0) {\n      if (DAT_000710d0 == 0) {\n        FUN_00034950();\n        FUN_00015f30();\n      }\n    }\n    else {\n      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);\n      if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }\n    }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      if (DAT_000710d0 == 0) {\n        FUN_00034950();\n        FUN_00015f30();\n      }\n    }" ({ "{") (if_statement "if (DAT_000710d0 == 0) {\n        FUN_00034950();\n        FUN_00015f30();\n      }" (if "if") (parenthesized_expression "(DAT_000710d0 == 0)" (( "(") (binary_expression "DAT_000710d0 == 0" (identifier "DAT_000710d0") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        FUN_00034950();\n        FUN_00015f30();\n      }" ({ "{") (expression_statement "FUN_00034950();" (call_expression "FUN_00034950()" (identifier "FUN_00034950") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "FUN_00015f30();" (call_expression "FUN_00015f30()" (identifier "FUN_00015f30") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);\n      if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }\n    }" (else "else") (compound_statement "{\n      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);\n      if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }\n    }" ({ "{") (expression_statement "iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);" (assignment_expression "iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0)" (identifier "iVar3") (= "=") (call_expression "FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0)" (identifier "FUN_00038c60") (argument_list "(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,\n                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0)" (( "(") (pointer_expression "*(undefined4 *)PTR_stdout_0006ffdc" (* "*") (cast_expression "(undefined4 *)PTR_stdout_0006ffdc" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_stdout_0006ffdc"))) (, ",") (identifier "iVar3") (, ",") (identifier "param_1") (, ",") (identifier "DAT_0007106c") (, ",") (identifier "PTR_bfd_demangle_0006ffe4") (, ",") (binary_expression "DAT_000710a8 != 0" (identifier "DAT_000710a8") (!= "!=") (number_literal "0")) () ")")))) (; ";")) (if_statement "if (iVar3 == 0) {\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        uVar2 = *param_1;\n        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);\n        FUN_000451b0(uVar7,uVar2);\n        DAT_00071110 = 1;\n      }" ({ "{") (expression_statement "uVar2 = *param_1;" (assignment_expression "uVar2 = *param_1" (identifier "uVar2") (= "=") (pointer_expression "*param_1" (* "*") (identifier "param_1"))) (; ";")) (expression_statement "uVar7 = dcgettext(0,"%s: printing debugging information failed",5);" (assignment_expression "uVar7 = dcgettext(0,"%s: printing debugging information failed",5)" (identifier "uVar7") (= "=") (call_expression "dcgettext(0,"%s: printing debugging information failed",5)" (identifier "dcgettext") (argument_list "(0,"%s: printing debugging information failed",5)" (( "(") (number_literal "0") (, ",") (string_literal ""%s: printing debugging information failed"" (" """) (string_content "%s: printing debugging information failed") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_000451b0(uVar7,uVar2);" (call_expression "FUN_000451b0(uVar7,uVar2)" (identifier "FUN_000451b0") (argument_list "(uVar7,uVar2)" (( "(") (identifier "uVar7") (, ",") (identifier "uVar2") () ")"))) (; ";")) (expression_statement "DAT_00071110 = 1;" (assignment_expression "DAT_00071110 = 1" (identifier "DAT_00071110") (= "=") (number_literal "1")) (; ";")) (} "}"))) (} "}")))) (} "}")))) (if_statement "if (DAT_0007106c != (void *)0x0) {\n    free(DAT_0007106c);\n    DAT_0007106c = (void *)0x0;\n  }" (if "if") (parenthesized_expression "(DAT_0007106c != (void *)0x0)" (( "(") (binary_expression "DAT_0007106c != (void *)0x0" (identifier "DAT_0007106c") (!= "!=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    free(DAT_0007106c);\n    DAT_0007106c = (void *)0x0;\n  }" ({ "{") (expression_statement "free(DAT_0007106c);" (call_expression "free(DAT_0007106c)" (identifier "free") (argument_list "(DAT_0007106c)" (( "(") (identifier "DAT_0007106c") () ")"))) (; ";")) (expression_statement "DAT_0007106c = (void *)0x0;" (assignment_expression "DAT_0007106c = (void *)0x0" (identifier "DAT_0007106c") (= "=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (if_statement "if (DAT_0007105c != (void *)0x0) {\n    free(DAT_0007105c);\n    DAT_0007105c = (void *)0x0;\n  }" (if "if") (parenthesized_expression "(DAT_0007105c != (void *)0x0)" (( "(") (binary_expression "DAT_0007105c != (void *)0x0" (identifier "DAT_0007105c") (!= "!=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    free(DAT_0007105c);\n    DAT_0007105c = (void *)0x0;\n  }" ({ "{") (expression_statement "free(DAT_0007105c);" (call_expression "free(DAT_0007105c)" (identifier "free") (argument_list "(DAT_0007105c)" (( "(") (identifier "DAT_0007105c") () ")"))) (; ";")) (expression_statement "DAT_0007105c = (void *)0x0;" (assignment_expression "DAT_0007105c = (void *)0x0" (identifier "DAT_0007105c") (= "=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (if_statement "if (DAT_00071058 != (void *)0x0) {\n    free(DAT_00071058);\n    DAT_00071058 = (void *)0x0;\n  }" (if "if") (parenthesized_expression "(DAT_00071058 != (void *)0x0)" (( "(") (binary_expression "DAT_00071058 != (void *)0x0" (identifier "DAT_00071058") (!= "!=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    free(DAT_00071058);\n    DAT_00071058 = (void *)0x0;\n  }" ({ "{") (expression_statement "free(DAT_00071058);" (call_expression "free(DAT_00071058)" (identifier "free") (argument_list "(DAT_00071058)" (( "(") (identifier "DAT_00071058") () ")"))) (; ";")) (expression_statement "DAT_00071058 = (void *)0x0;" (assignment_expression "DAT_00071058 = (void *)0x0" (identifier "DAT_00071058") (= "=") (cast_expression "(void *)0x0" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (expression_statement "DAT_00071068 = 0;" (assignment_expression "DAT_00071068 = 0" (identifier "DAT_00071068") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_00071050 = 0;" (assignment_expression "DAT_00071050 = 0" (identifier "DAT_00071050") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_00071054 = 0;" (assignment_expression "DAT_00071054 = 0" (identifier "DAT_00071054") (= "=") (number_literal "0")) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}")))

/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
/* WARNING: Type propagation algorithm not settling */

void __regparm3 function_1(type_1 *abfd)

{
  type_2 *pbVar1;
  type_3 var_71;
  char *pcVar3;
  long var_26;
  type_4 **var_59;
  type_5 *var_56;
  type_4 *var_58;
  type_6 *var_64;
  type_2 *pbVar8;
  type_7 uVar9;
  type_7 uVar10;
  void *var_77;
  type_8 var_80;
  char *__format;
  type_9 **relpp;
  char *pcVar12;
  int var_51;
  type_10 var_13;
  type_10 in_EDX;
  type_10 extraout_EDX;
  type_10 extraout_EDX_00;
  type_10 extraout_EDX_01;
  type_10 extraout_EDX_02;
  type_10 extraout_EDX_03;
  type_10 extraout_EDX_04;
  type_10 extraout_EDX_05;
  type_7 extraout_EDX_06;
  type_10 extraout_EDX_07;
  type_4 **ppaVar15;
  type_11 *var_52;
  type_11 *var_50;
  type_7 *var_68;
  type_11 *var_53;
  type_7 *var_69;
  bool var_54;
  bool var_55;
  bool bVar23;
  type_11 bVar24;
  type_12 var_37;
  type_13 lVar26;
  type_4 **var_49;
  type_4 **var_57;
  int var_48;
  type_14 aux;
  type_8 has_reloc;
  type_14 *local_ac;
  type_15 local_a8;
  type_7 local_a4;
  type_7 local_a0;
  type_7 local_9c;
  type_4 **local_84;
  long local_7c;
  type_16 *local_68;
  type_16 *local_64;
  type_7 local_48;
  type_7 local_44;
  type_7 local_40;
  type_7 local_3c;
  type_7 local_38;
  char *local_24;
  type_7 uStack_14;
  
  bVar24 = 0;
  uStack_14 = 0x16fdb;
  if (var_1 == 0) {
    if (var_2 == 0 && var_3 == 0) {
LAB_00017807:
      pcVar3 = abfd->filename;
      pcVar12 = abfd->xvec->name;
      __format = (char *)var_4(0,"\n%s:     file format %s\n",5);
      var_5(__format,pcVar3,pcVar12);
      in_EDX = extraout_EDX_03;
    }
  }
  else {
    has_reloc = *(type_10 *)&abfd->field_0x28 >> 5 & 1;
    var_6(abfd,adjust_addresses,&has_reloc);
    in_EDX = extraout_EDX_02;
    if (var_2 == 0 && var_3 == 0) goto LAB_00017807;
  }
  if (var_7 != 0) {
    var_8(*(type_17 **)PTR_stdout_0006ffdc,abfd,1,0);
    in_EDX = extraout_EDX_04;
  }
  if (var_9 != 0) {
    uVar9 = var_10(abfd);
    uVar10 = var_11(abfd);
    uVar9 = var_12(uVar10,uVar9);
    pcVar3 = (char *)var_4(0,"architecture: %s, ",5);
    var_5(pcVar3,uVar9);
    var_13 = *(type_10 *)&abfd->field_0x28;
    pcVar3 = (char *)var_4(0,"flags 0x%08x:\n",5);
    var_5(pcVar3,var_13 >> 5 & 0x3ff);
    pcVar3 = "";
    var_13 = *(type_10 *)&abfd->field_0x28 >> 5;
    if ((var_13 & 1) != 0) {
      var_5("%s%s",&DAT_0004ca07,"HAS_RELOC");
      pcVar3 = ", ";
      var_13 = *(type_10 *)&abfd->field_0x28 >> 5;
    }
    if ((var_13 & 2) != 0) {
      var_5("%s%s",pcVar3,"EXEC_P");
      pcVar3 = ", ";
      var_13 = *(type_10 *)&abfd->field_0x28 >> 5;
    }
    if ((var_13 & 4) != 0) {
      var_5("%s%s",pcVar3,"HAS_LINENO");
      pcVar3 = ", ";
      var_13 = *(type_10 *)&abfd->field_0x28 >> 5;
    }
    if ((var_13 & 8) != 0) {
      var_5("%s%s",pcVar3,"HAS_DEBUG");
      pcVar3 = ", ";
      var_13 = *(type_10 *)&abfd->field_0x28 >> 5;
    }
    if ((var_13 & 0x10) != 0) {
      var_5("%s%s",pcVar3,"HAS_SYMS");
      pcVar3 = ", ";
      var_13 = *(type_10 *)&abfd->field_0x28 >> 5;
    }
    if ((var_13 & 0x20) != 0) {
      var_5("%s%s",pcVar3,"HAS_LOCALS");
      pcVar3 = ", ";
      var_13 = *(type_10 *)&abfd->field_0x28 >> 5;
    }
    if ((var_13 & 0x40) != 0) {
      var_5("%s%s",pcVar3,"DYNAMIC");
      pcVar3 = ", ";
      var_13 = *(type_10 *)&abfd->field_0x28 >> 5;
    }
    if ((var_13 & 0x80) != 0) {
      var_5("%s%s",pcVar3,"WP_TEXT");
      pcVar3 = ", ";
      var_13 = *(type_10 *)&abfd->field_0x28 >> 5;
    }
    if ((var_13 & 0x100) != 0) {
      var_5("%s%s",pcVar3,"D_PAGED");
      pcVar3 = ", ";
      var_13 = *(type_10 *)&abfd->field_0x28 >> 5;
    }
    if ((var_13 & 0x200) != 0) {
      var_5("%s%s",pcVar3,"BFD_IS_RELAXABLE");
    }
    pcVar3 = (char *)var_4(0,"\nstart address 0x",5);
    var_5(pcVar3);
    var_14(abfd,*(type_7 *)PTR_stdout_0006ffdc,abfd->start_address);
    var_15(10);
    in_EDX = extraout_EDX_05;
  }
  if (var_16 != 0) {
    (*abfd->xvec->_bfd_print_private_bfd_data)(abfd,*(void **)PTR_stdout_0006ffdc);
    in_EDX = extraout_EDX_00;
  }
  if (var_17 != (char *)0x0) {
    pcVar3 = (char *)var_4(0,"option -P/--private not supported by this file",5);
    var_18(pcVar3);
    in_EDX = extraout_EDX;
  }
  if (var_2 == 0 && var_3 == 0) {
    var_19(10,*(type_17 **)PTR_stdout_0006ffdc);
    in_EDX = extraout_EDX_07;
  }
  var_37 = var_20(in_EDX,var_29);
  ppaVar15 = var_81;
  if ((((var_21 != 0 || var_22 != 0) || var_23 != 0) || var_24 != 0) ||
      var_25 != 0) {
    if ((abfd->field_0x29 & 2) == 0) {
      var_37 = (type_12)in_EDX << 0x20;
      ppaVar15 = (type_4 **)0x0;
    }
    else {
      var_26 = (*abfd->xvec->_bfd_get_symtab_upper_bound)(abfd);
      if (var_26 < 0) {
        pcVar3 = abfd->filename;
        pcVar12 = (char *)var_4(0,"failed to read symbol table from: %s",5,var_26);
        var_18(pcVar12,pcVar3);
        pcVar3 = (char *)var_4(0,"error message was",5);
                    /* WARNING: Subroutine does not return */
        var_27(pcVar3);
      }
      ppaVar15 = (type_18 **)0x0;
      if (var_26 != 0) {
        ppaVar15 = (type_4 **)var_28(var_26);
      }
      var_37 = (type_12)(*abfd->xvec->_bfd_canonicalize_symtab)(abfd,ppaVar15);
      var_29 = (long)var_37;
      if (var_29 < 0) goto LAB_00017bfe;
    }
  }
  var_81 = ppaVar15;
  var_29 = (long)var_37;
  if (var_30 != 0) {
    has_reloc = 0xd;
    pcVar3 = (char *)var_4(0,"Sections:\n",5);
    var_5(pcVar3);
    if (var_31 != 0) {
      var_6(abfd,find_longest_section_name,&has_reloc);
    }
    var_80 = has_reloc;
    pcVar3 = (char *)var_4(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);
    var_5(pcVar3,var_80,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);
    if (var_31 != 0) {
      pcVar3 = (char *)var_4(0,"  Flags",5);
      var_5(pcVar3);
    }
    var_15(10);
    var_6(abfd,dump_section_header,&has_reloc);
    var_37 = var_20(extraout_EDX_06,var_29);
  }
  var_29 = (long)var_37;
  if (var_32 == 0 && var_33 == 0) {
    if (var_23 != 0) {
      var_26 = (*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound)(abfd);
      lVar26 = var_20((int)((type_12)var_26 >> 0x20),var_34);
      ppaVar15 = var_82;
      if (0 < (int)var_26) goto LAB_000170fd;
      goto LAB_00017145;
    }
  }
  else {
LAB_000170fd:
    var_26 = (*abfd->xvec->_bfd_get_dynamic_symtab_upper_bound)(abfd);
    if (var_26 < 0) {
      pcVar3 = abfd->filename;
      if ((abfd->field_0x29 & 8) != 0) {
                    /* WARNING: Subroutine does not return */
        var_27(pcVar3);
      }
      pcVar12 = (char *)var_4(0,"%s: not a dynamic object",5);
      var_18(pcVar12,pcVar3);
      exit_status = 1;
      lVar26 = (type_12)extraout_EDX_01 << 0x20;
      ppaVar15 = (type_4 **)0x0;
    }
    else {
      ppaVar15 = (type_18 **)0x0;
      if (var_26 != 0) {
        ppaVar15 = (type_4 **)var_28(var_26);
      }
      lVar26 = (type_13)(*abfd->xvec->_bfd_canonicalize_dynamic_symtab)(abfd,ppaVar15);
      var_34 = (long)lVar26;
      if (var_34 < 0) goto LAB_00017bfe;
    }
LAB_00017145:
    var_82 = ppaVar15;
    var_34 = (long)lVar26;
    var_37 = var_20((int)((type_12)lVar26 >> 0x20),var_29);
    if (var_23 != 0) {
      var_35 = (*abfd->xvec->_bfd_get_synthetic_symtab)
                             (abfd,var_29,var_81,var_34,var_82,&var_83);
      var_37 = (type_12)(type_10)var_29;
      if (var_35 < 0) {
        var_35 = 0;
        var_37 = (type_12)(type_10)var_29;
      }
    }
  }
  var_29 = (long)var_37;
  if (var_21 != 0) {
    var_36((type_1 *)0x0,(type_8)(var_37 >> 0x20));
  }
  if (var_32 != 0) {
    var_36((type_1 *)0x1,var_32);
  }
  if (var_25 != 0) {
    var_38(abfd);
  }
  if (var_39 != 0) {
    var_40(abfd,".stab",".stabstr");
    var_40(abfd,".stab.excl",".stab.exclstr");
    var_40(abfd,".stab.index",".stab.indexstr");
    var_40(abfd,"LC_SYMTAB.stabs","LC_SYMTAB.stabstr");
    var_40(abfd,"$GDB_SYMBOLS$","$GDB_STRINGS$");
  }
  if (var_22 == 0) {
LAB_00017355:
    if (var_33 != 0) {
      if (var_23 != 0) goto LAB_00017371;
      var_26 = (*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound)(abfd);
      if (var_26 < 0) goto LAB_00017bfe;
      var_5("DYNAMIC RELOCATION RECORDS");
      if (var_26 == 0) {
        var_41(" (none)\n");
      }
      else {
        relpp = (type_9 **)var_28(var_26);
        var_26 = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,relpp,var_82);
        if (var_26 < 0) goto LAB_00017bfe;
        if (var_26 == 0) {
          var_41(" (none)\n");
        }
        else {
          var_15(10);
          var_42(abfd,(type_19 *)0x0,relpp,var_26);
          var_41("\n");
        }
        var_43(relpp);
      }
    }
LAB_000171f0:
    if (var_44 != 0) {
LAB_00017ac0:
      var_6(abfd,dump_section,0);
    }
    if (var_23 == 0) goto joined_r0x0001721a;
  }
  else {
    if (var_23 == 0) {
      var_6(abfd,dump_relocs_in_section,0);
      goto LAB_00017355;
    }
    if (var_33 == 0) goto LAB_000171f0;
LAB_00017371:
    if (var_44 != 0) goto LAB_00017ac0;
  }
  print_files = (type_20 *)0x0;
  prev_functionname = (char *)0x0;
  prev_line = 0xffffffff;
  var_45 = var_29;
  if (var_29 == 0) {
    var_45 = var_34;
  }
  prev_discriminator = 0;
  var_59 = (type_4 **)var_28((var_45 + var_35) * 4);
  var_48 = var_45;
  ppaVar15 = var_81;
  if (var_29 == 0) {
    ppaVar15 = var_82;
  }
  sorted_syms = var_59;
  var_46(var_59,ppaVar15,var_45 << 2);
  var_56 = (type_5 *)(var_47 + 0xa8);
  var_49 = var_59;
  var_57 = var_59;
LAB_00017428:
  var_48 = var_48 + -1;
  if (-1 < var_48) {
    while( true ) {
      ppaVar15 = var_49 + 1;
      var_58 = *var_49;
      var_50 = (type_11 *)var_58->name;
      var_49 = ppaVar15;
      if ((var_50 == (type_11 *)0x0) || (*var_50 == 0)) break;
      var_54 = false;
      bVar23 = (var_58->flags & 0x104) == 0;
      if (!bVar23) {
        var_51 = 4;
        var_52 = var_50;
        var_53 = &DAT_0004c8bd;
        do {
          if (var_51 == 0) break;
          var_51 = var_51 + -1;
          var_54 = *var_52 < *var_53;
          bVar23 = *var_52 == *var_53;
          var_52 = var_52 + (type_10)bVar24 * -2 + 1;
          var_53 = var_53 + (type_10)bVar24 * -2 + 1;
        } while (bVar23);
        var_55 = false;
        var_54 = (!var_54 && !bVar23) == var_54;
        if (!var_54) {
          var_51 = 5;
          var_52 = &DAT_0004c8c2;
          do {
            if (var_51 == 0) break;
            var_51 = var_51 + -1;
            var_55 = *var_50 < *var_52;
            var_54 = *var_50 == *var_52;
            var_50 = var_50 + (type_10)bVar24 * -2 + 1;
            var_52 = var_52 + (type_10)bVar24 * -2 + 1;
          } while (var_54);
          if ((!var_55 && !var_54) != var_55) break;
        }
      }
      if ((var_58->section == var_56) || ((var_58->section->flags & 0x1000) != 0)) break;
      *var_57 = var_58;
      var_57 = var_57 + 1;
      var_48 = var_48 + -1;
      if (var_48 < 0) goto LAB_000174ab;
    }
    goto LAB_00017428;
  }
LAB_000174ab:
  var_45 = (int)var_57 - (int)var_59 >> 2;
  if (0 < var_35) {
    var_45 = var_45 + var_35;
    var_58 = var_83;
    do {
      *var_57 = var_58;
      var_57 = var_57 + 1;
      var_58 = var_58 + 1;
    } while (var_59 + var_45 != var_57);
  }
  var_60(var_59,var_45,4,compare_symbols);
  var_61(&has_reloc,*(type_7 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0);
  local_ac = &aux;
  local_68 = objdump_print_address;
  local_64 = objdump_symbol_at_address;
  aux.require_sec = 0;
  aux.dynrelbuf = (type_9 **)0x0;
  aux.dynrelcount = 0;
  aux.reloc = (type_9 *)0x0;
  aux.abfd = abfd;
  if (var_62 != (char *)0x0) {
    var_64 = (type_6 *)var_63(var_62);
    pcVar3 = var_62;
    if (var_64 == (type_6 *)0x0) {
      pcVar12 = (char *)var_4(0,"can\'t use supplied machine %s",5,var_59);
                    /* WARNING: Subroutine does not return */
      var_65(pcVar12,pcVar3);
    }
    abfd->arch_info = var_64;
  }
  if (var_66 != var_67) {
    pbVar8 = (type_2 *)var_28(0x1c4);
    pbVar1 = abfd->xvec;
    var_69 = (type_7 *)((type_10)&pbVar8->flavour & 0xfffffffc);
    var_51 = (int)pbVar8 - (int)var_69;
    pbVar8->name = pbVar1->name;
    pbVar8->backend_data = pbVar1->backend_data;
    var_68 = (type_7 *)((int)pbVar1 - var_51);
    for (var_13 = var_51 + 0x1c4U >> 2; var_13 != 0; var_13 = var_13 - 1) {
      *var_69 = *var_68;
      var_68 = var_68 + (type_10)bVar24 * -2 + 1;
      var_69 = var_69 + (type_10)bVar24 * -2 + 1;
    }
    abfd->xvec = pbVar8;
    pbVar8->byteorder = var_66;
  }
  uVar9 = var_10(abfd);
  var_71 = abfd->xvec->byteorder;
  uVar10 = var_11(abfd);
  aux.disassemble_fn = (type_21)var_70(uVar10,var_71 == var_72,uVar9,abfd);
  if (aux.disassemble_fn == (type_21)0x0) {
    uVar9 = var_11(abfd);
    uVar9 = var_12(uVar9,0);
    pcVar3 = (char *)var_4(0,"can\'t disassemble for architecture %s\n",5);
    var_18(pcVar3,uVar9);
    exit_status = 1;
  }
  else {
    local_a8 = abfd->xvec->flavour;
    local_a4 = var_11(abfd);
    local_a0 = var_10(abfd);
    local_24 = disassembler_options;
    local_44 = var_73(abfd);
    local_40 = 8;
    local_3c = 3;
    local_38 = 0;
    var_71 = abfd->xvec->byteorder;
    if (var_71 == var_72) {
      local_9c = 0;
      local_48 = 0;
    }
    else if (var_71 == var_74) {
      local_9c = 1;
      local_48 = 1;
    }
    else {
      local_9c = 2;
    }
    var_75(&has_reloc);
    var_26 = (*abfd->xvec->_bfd_get_dynamic_reloc_upper_bound)(abfd);
    if (var_26 < 0) {
      if (var_33 != 0) {
LAB_00017bfe:
                    /* WARNING: Subroutine does not return */
        var_27(abfd->filename);
      }
    }
    else if (var_26 != 0) {
      aux.dynrelbuf = (type_9 **)var_28(var_26);
      aux.dynrelcount = (*abfd->xvec->_bfd_canonicalize_dynamic_reloc)(abfd,aux.dynrelbuf,var_82);
      if (aux.dynrelcount < 0) goto LAB_00017bfe;
      var_60(aux.dynrelbuf,aux.dynrelcount,4,compare_relocs);
    }
    local_84 = sorted_syms;
    local_7c = var_45;
    var_6(abfd,disassemble_section,&has_reloc);
    if (aux.dynrelbuf != (type_9 **)0x0) {
      var_43(aux.dynrelbuf);
    }
    var_43(sorted_syms);
  }
joined_r0x0001721a:
  if (var_24 != 0) {
    var_77 = var_76(abfd,var_81,var_29,1);
    if (var_77 == (void *)0x0) {
      if (var_25 == 0) {
        var_78();
        var_38(abfd);
      }
    }
    else {
      var_80 = var_79
                         (*(type_17 **)PTR_stdout_0006ffdc,var_77,abfd,var_81,
                          (type_22 *)PTR_bfd_demangle_0006ffe4,
                          (type_10)(var_2 != 0));
      if (var_80 == 0) {
        pcVar3 = abfd->filename;
        pcVar12 = (char *)var_4(0,"%s: printing debugging information failed",5);
        var_18(pcVar12,pcVar3);
        exit_status = 1;
      }
    }
  }
  if (var_81 != (type_4 **)0x0) {
    var_43(var_81);
    var_81 = (type_4 **)0x0;
  }
  if (var_82 != (type_4 **)0x0) {
    var_43(var_82);
    var_82 = (type_4 **)0x0;
  }
  if (var_83 != (type_4 *)0x0) {
    var_43(var_83);
    var_83 = (type_4 *)0x0;
  }
  var_29 = 0;
  var_34 = 0;
  var_35 = 0;
  return;
}


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

/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
/* WARNING: Type propagation algorithm not settling */

void __regparm3 MASKED(undefined4 *param_1)

{
  int *piVar1;
  undefined4 uVar2;
  int iVar3;
  int *__dest;
  undefined *puVar4;
  undefined4 *puVar5;
  char *pcVar6;
  undefined4 uVar7;
  int iVar8;
  uint uVar9;
  void *pvVar10;
  byte *pbVar11;
  byte *pbVar12;
  undefined4 *puVar13;
  byte *pbVar14;
  undefined4 *puVar15;
  bool bVar16;
  bool bVar17;
  bool bVar18;
  byte bVar19;
  int *local_f0;
  int *local_ec;
  int local_e8;
  undefined4 *local_d0 [2];
  undefined4 local_c8;
  void *local_c4;
  size_t local_c0;
  int local_bc;
  undefined4 local_b8;
  uint local_b4 [2];
  undefined4 **local_ac;
  undefined4 local_a8;
  undefined4 local_a4;
  undefined4 local_a0;
  undefined4 local_9c;
  int *local_84;
  size_t local_7c;
  code *local_68;
  code *local_64;
  undefined4 local_48;
  undefined4 local_44;
  undefined4 local_40;
  undefined4 local_3c;
  undefined4 local_38;
  undefined4 local_24;
  undefined4 uStack_14;
  
  bVar19 = 0;
  uStack_14 = 0x16fdb;
  if (DAT_0007109c == 0) {
    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {
LAB_00017807:
      uVar2 = *param_1;
      uVar7 = *(undefined4 *)param_1[1];
      pcVar6 = (char *)dcgettext(0,"\n%s:     file format %s\n",5);
      printf(pcVar6,uVar2,uVar7);
    }
  }
  else {
    local_b4[0] = (uint)param_1[10] >> 5 & 1;
    bfd_map_over_sections(param_1,FUN_000160d0,local_b4);
    if (DAT_000710a8 == 0 && DAT_000710a4 == 0) goto LAB_00017807;
  }
  if (DAT_000710ec != 0) {
    FUN_000457f0(*(undefined4 *)PTR_stdout_0006ffdc,param_1,1,0);
  }
  if (DAT_00071100 != 0) {
    uVar2 = bfd_get_mach(param_1);
    uVar7 = bfd_get_arch(param_1);
    uVar2 = bfd_printable_arch_mach(uVar7,uVar2);
    pcVar6 = (char *)dcgettext(0,"architecture: %s, ",5);
    printf(pcVar6,uVar2);
    uVar9 = param_1[10];
    pcVar6 = (char *)dcgettext(0,"flags 0x%08x:\n",5);
    printf(pcVar6,uVar9 >> 5 & 0x3ff);
    pcVar6 = "";
    uVar9 = (uint)param_1[10] >> 5;
    if ((uVar9 & 1) != 0) {
      printf("%s%s",&DAT_0004ca07,"HAS_RELOC");
      pcVar6 = ", ";
      uVar9 = (uint)param_1[10] >> 5;
    }
    if ((uVar9 & 2) != 0) {
      printf("%s%s",pcVar6,"EXEC_P");
      pcVar6 = ", ";
      uVar9 = (uint)param_1[10] >> 5;
    }
    if ((uVar9 & 4) != 0) {
      printf("%s%s",pcVar6,"HAS_LINENO");
      pcVar6 = ", ";
      uVar9 = (uint)param_1[10] >> 5;
    }
    if ((uVar9 & 8) != 0) {
      printf("%s%s",pcVar6,"HAS_DEBUG");
      pcVar6 = ", ";
      uVar9 = (uint)param_1[10] >> 5;
    }
    if ((uVar9 & 0x10) != 0) {
      printf("%s%s",pcVar6,"HAS_SYMS");
      pcVar6 = ", ";
      uVar9 = (uint)param_1[10] >> 5;
    }
    if ((uVar9 & 0x20) != 0) {
      printf("%s%s",pcVar6,"HAS_LOCALS");
      pcVar6 = ", ";
      uVar9 = (uint)param_1[10] >> 5;
    }
    if ((uVar9 & 0x40) != 0) {
      printf("%s%s",pcVar6,"DYNAMIC");
      pcVar6 = ", ";
      uVar9 = (uint)param_1[10] >> 5;
    }
    if ((uVar9 & 0x80) != 0) {
      printf("%s%s",pcVar6,"WP_TEXT");
      pcVar6 = ", ";
      uVar9 = (uint)param_1[10] >> 5;
    }
    if ((uVar9 & 0x100) != 0) {
      printf("%s%s",pcVar6,"D_PAGED");
      pcVar6 = ", ";
      uVar9 = (uint)param_1[10] >> 5;
    }
    if ((uVar9 & 0x200) != 0) {
      printf("%s%s",pcVar6,"BFD_IS_RELAXABLE");
    }
    pcVar6 = (char *)dcgettext(0,"\nstart address 0x",5);
    printf(pcVar6);
    bfd_fprintf_vma(param_1,*(undefined4 *)PTR_stdout_0006ffdc,param_1[0x1c]);
    putchar(10);
  }
  if (DAT_000710e8 != 0) {
    (**(code **)(param_1[1] + 0xc4))(param_1,*(undefined4 *)PTR_stdout_0006ffdc);
  }
  if (DAT_000710e4 != 0) {
    uVar2 = dcgettext(0,"option -P/--private not supported by this file",5);
    FUN_000451b0(uVar2);
  }
  if (DAT_000710a8 == 0 && DAT_000710a4 == 0) {
    putc(10,*(FILE **)PTR_stdout_0006ffdc);
  }
  pvVar10 = DAT_0007106c;
  if ((((DAT_000710fc != 0 || DAT_000710f4 != 0) || DAT_000710c4 != 0) || DAT_000710ac != 0) ||
      DAT_000710d0 != 0) {
    if ((*(byte *)((int)param_1 + 0x29) & 2) == 0) {
      DAT_00071068 = 0;
      pvVar10 = (void *)0x0;
    }
    else {
      iVar3 = (**(code **)(param_1[1] + 0x104))(param_1);
      if (iVar3 < 0) {
        uVar2 = *param_1;
        uVar7 = dcgettext(0,"failed to read symbol table from: %s",5,iVar3);
        FUN_000451b0(uVar7,uVar2);
        uVar2 = dcgettext(0,"error message was",5);
                    /* WARNING: Subroutine does not return */
        FUN_000450f0(uVar2);
      }
      pvVar10 = (void *)0x0;
      if (iVar3 != 0) {
        pvVar10 = (void *)xmalloc(iVar3);
      }
      DAT_00071068 = (**(code **)(param_1[1] + 0x108))(param_1,pvVar10);
      if (DAT_00071068 < 0) goto LAB_00017bfe;
    }
  }
  DAT_0007106c = pvVar10;
  if (DAT_00071104 != 0) {
    local_b4[0] = 0xd;
    pcVar6 = (char *)dcgettext(0,"Sections:\n",5);
    printf(pcVar6);
    if (DAT_000710b4 != 0) {
      bfd_map_over_sections(param_1,FUN_00016d60,local_b4);
    }
    uVar9 = local_b4[0];
    pcVar6 = (char *)dcgettext(0,"Idx %-*s Size      %-*s%-*sFile off  Algn",5);
    printf(pcVar6,uVar9,"Name",10,&DAT_0004c7fc,10,&DAT_0004c7f8);
    if (DAT_000710b4 != 0) {
      pcVar6 = (char *)dcgettext(0,"  Flags",5);
      printf(pcVar6);
    }
    putchar(10);
    bfd_map_over_sections(param_1,FUN_00016160,local_b4);
  }
  if (DAT_000710f8 == 0 && DAT_000710f0 == 0) {
    if (DAT_000710c4 != 0) {
      iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);
      pvVar10 = DAT_0007105c;
      if (0 < iVar3) goto LAB_000170fd;
      goto LAB_00017145;
    }
  }
  else {
LAB_000170fd:
    iVar3 = (**(code **)(param_1[1] + 0x1a8))(param_1);
    if (iVar3 < 0) {
      uVar2 = *param_1;
      if ((*(byte *)((int)param_1 + 0x29) & 8) != 0) {
                    /* WARNING: Subroutine does not return */
        FUN_000450f0(uVar2);
      }
      uVar7 = dcgettext(0,"%s: not a dynamic object",5);
      FUN_000451b0(uVar7,uVar2);
      DAT_00071110 = 1;
      DAT_00071050 = 0;
      pvVar10 = (void *)0x0;
    }
    else {
      pvVar10 = (void *)0x0;
      if (iVar3 != 0) {
        pvVar10 = (void *)xmalloc(iVar3);
      }
      DAT_00071050 = (**(code **)(param_1[1] + 0x1ac))(param_1,pvVar10);
      if (DAT_00071050 < 0) goto LAB_00017bfe;
    }
LAB_00017145:
    DAT_0007105c = pvVar10;
    if ((DAT_000710c4 != 0) &&
       (DAT_00071054 = (**(code **)(param_1[1] + 0x1b0))
                                 (param_1,DAT_00071068,DAT_0007106c,DAT_00071050,DAT_0007105c,
                                  &DAT_00071058), DAT_00071054 < 0)) {
      DAT_00071054 = 0;
    }
  }
  if (DAT_000710fc != 0) {
    FUN_00016db0();
  }
  if (DAT_000710f8 != 0) {
    FUN_00016db0();
  }
  if (DAT_000710d0 != 0) {
    FUN_00015f30();
  }
  if (DAT_000710cc != 0) {
    FUN_00014db0();
    FUN_00014db0();
    FUN_00014db0();
    FUN_00014db0();
    FUN_00014db0();
  }
  if (DAT_000710f4 == 0) {
LAB_00017355:
    if (DAT_000710f0 != 0) {
      if (DAT_000710c4 != 0) goto LAB_00017371;
      iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);
      if (iVar3 < 0) goto LAB_00017bfe;
      printf("DYNAMIC RELOCATION RECORDS");
      if (iVar3 == 0) {
        puts(" (none)\n");
      }
      else {
        pvVar10 = (void *)xmalloc(iVar3);
        iVar3 = (**(code **)(param_1[1] + 0x1b8))(param_1,pvVar10,DAT_0007105c);
        if (iVar3 < 0) goto LAB_00017bfe;
        if (iVar3 == 0) {
          puts(" (none)\n");
        }
        else {
          putchar(10);
          FUN_000153f0(iVar3);
          puts("\n");
        }
        free(pvVar10);
      }
    }
LAB_000171f0:
    if (DAT_00071108 != 0) {
LAB_00017ac0:
      bfd_map_over_sections(param_1,FUN_00016840,0);
    }
    if (DAT_000710c4 == 0) goto joined_r0x0001721a;
  }
  else {
    if (DAT_000710c4 == 0) {
      bfd_map_over_sections(param_1,FUN_00018570,0);
      goto LAB_00017355;
    }
    if (DAT_000710f0 == 0) goto LAB_000171f0;
LAB_00017371:
    if (DAT_00071108 != 0) goto LAB_00017ac0;
  }
  DAT_0007102c = 0;
  DAT_00071038 = 0;
  DAT_00071034 = 0xffffffff;
  DAT_00071060 = DAT_00071068;
  if (DAT_00071068 == 0) {
    DAT_00071060 = DAT_00071050;
  }
  DAT_00071030 = 0;
  __dest = (int *)xmalloc((DAT_00071060 + DAT_00071054) * 4);
  local_e8 = DAT_00071060;
  pvVar10 = DAT_0007106c;
  if (DAT_00071068 == 0) {
    pvVar10 = DAT_0007105c;
  }
  DAT_00071064 = __dest;
  memcpy(__dest,pvVar10,DAT_00071060 << 2);
  puVar4 = PTR__bfd_std_section_0006ffd8 + 0xa8;
  local_f0 = __dest;
  local_ec = __dest;
LAB_00017428:
  local_e8 = local_e8 + -1;
  if (-1 < local_e8) {
    while( true ) {
      piVar1 = local_f0 + 1;
      iVar3 = *local_f0;
      pbVar12 = *(byte **)(iVar3 + 4);
      local_f0 = piVar1;
      if ((pbVar12 == (byte *)0x0) || (*pbVar12 == 0)) break;
      bVar16 = false;
      bVar18 = (*(uint *)(iVar3 + 0xc) & 0x104) == 0;
      if (!bVar18) {
        iVar8 = 4;
        pbVar11 = pbVar12;
        pbVar14 = &DAT_0004c8bd;
        do {
          if (iVar8 == 0) break;
          iVar8 = iVar8 + -1;
          bVar16 = *pbVar11 < *pbVar14;
          bVar18 = *pbVar11 == *pbVar14;
          pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;
          pbVar14 = pbVar14 + (uint)bVar19 * -2 + 1;
        } while (bVar18);
        bVar17 = false;
        bVar16 = (!bVar16 && !bVar18) == bVar16;
        if (!bVar16) {
          iVar8 = 5;
          pbVar11 = &DAT_0004c8c2;
          do {
            if (iVar8 == 0) break;
            iVar8 = iVar8 + -1;
            bVar17 = *pbVar12 < *pbVar11;
            bVar16 = *pbVar12 == *pbVar11;
            pbVar12 = pbVar12 + (uint)bVar19 * -2 + 1;
            pbVar11 = pbVar11 + (uint)bVar19 * -2 + 1;
          } while (bVar16);
          if ((!bVar17 && !bVar16) != bVar17) break;
        }
      }
      if ((*(undefined **)(iVar3 + 0x10) == puVar4) ||
         (((*(undefined **)(iVar3 + 0x10))[0x15] & 0x10) != 0)) break;
      *local_ec = iVar3;
      local_ec = local_ec + 1;
      local_e8 = local_e8 + -1;
      if (local_e8 < 0) goto LAB_000174ab;
    }
    goto LAB_00017428;
  }
LAB_000174ab:
  DAT_00071060 = (int)local_ec - (int)__dest >> 2;
  if (0 < DAT_00071054) {
    DAT_00071060 = DAT_00071060 + DAT_00071054;
    pvVar10 = DAT_00071058;
    do {
      *local_ec = (int)pvVar10;
      local_ec = local_ec + 1;
      pvVar10 = (void *)((int)pvVar10 + 0x18);
    } while (__dest + DAT_00071060 != local_ec);
  }
  qsort(__dest,DAT_00071060,4,FUN_00015990);
  init_disassemble_info(local_b4,*(undefined4 *)PTR_stdout_0006ffdc,PTR_fprintf_0006ffd0);
  local_ac = local_d0;
  local_68 = FUN_000153c0;
  local_64 = FUN_00014c20;
  local_c8 = 0;
  local_c4 = (void *)0x0;
  local_c0 = 0;
  local_b8 = 0;
  local_d0[0] = param_1;
  if (DAT_00071074 != 0) {
    iVar8 = bfd_scan_arch(DAT_00071074);
    iVar3 = DAT_00071074;
    if (iVar8 == 0) {
      uVar2 = dcgettext(0,"can\'t use supplied machine %s",5,__dest);
                    /* WARNING: Subroutine does not return */
      FUN_00045180(uVar2,iVar3);
    }
    param_1[0x20] = iVar8;
  }
  if (DAT_00070228 != 2) {
    puVar5 = (undefined4 *)xmalloc(0x1c4);
    puVar13 = (undefined4 *)param_1[1];
    iVar3 = (int)puVar5 - (int)((uint)(puVar5 + 1) & 0xfffffffc);
    *puVar5 = *puVar13;
    puVar5[0x70] = puVar13[0x70];
    puVar13 = (undefined4 *)((int)puVar13 - iVar3);
    puVar15 = (undefined4 *)((uint)(puVar5 + 1) & 0xfffffffc);
    for (uVar9 = iVar3 + 0x1c4U >> 2; uVar9 != 0; uVar9 = uVar9 - 1) {
      *puVar15 = *puVar13;
      puVar13 = puVar13 + (uint)bVar19 * -2 + 1;
      puVar15 = puVar15 + (uint)bVar19 * -2 + 1;
    }
    param_1[1] = puVar5;
    puVar5[2] = DAT_00070228;
  }
  uVar2 = bfd_get_mach(param_1);
  iVar3 = *(int *)(param_1[1] + 8);
  uVar7 = bfd_get_arch(param_1);
  local_bc = disassembler(uVar7,iVar3 == 0,uVar2,param_1);
  if (local_bc == 0) {
    uVar2 = bfd_get_arch(param_1);
    uVar2 = bfd_printable_arch_mach(uVar2,0);
    uVar7 = dcgettext(0,"can\'t disassemble for architecture %s\n",5);
    FUN_000451b0(uVar7,uVar2);
    DAT_00071110 = 1;
  }
  else {
    local_a8 = *(undefined4 *)(param_1[1] + 4);
    local_a4 = bfd_get_arch(param_1);
    local_a0 = bfd_get_mach(param_1);
    local_24 = DAT_00071070;
    local_44 = bfd_octets_per_byte(param_1);
    local_40 = 8;
    local_3c = 3;
    local_38 = 0;
    if (*(int *)(param_1[1] + 8) == 0) {
      local_9c = 0;
      local_48 = 0;
    }
    else if (*(int *)(param_1[1] + 8) == 1) {
      local_9c = 1;
      local_48 = 1;
    }
    else {
      local_9c = 2;
    }
    disassemble_init_for_target(local_b4);
    iVar3 = (**(code **)(param_1[1] + 0x1b4))(param_1);
    if (iVar3 < 0) {
      if (DAT_000710f0 != 0) {
LAB_00017bfe:
                    /* WARNING: Subroutine does not return */
        FUN_000450f0(*param_1);
      }
    }
    else if (iVar3 != 0) {
      local_c4 = (void *)xmalloc(iVar3);
      local_c0 = (**(code **)(param_1[1] + 0x1b8))(param_1,local_c4,DAT_0007105c);
      if ((int)local_c0 < 0) goto LAB_00017bfe;
      qsort(local_c4,local_c0,4,FUN_000144e0);
    }
    local_84 = DAT_00071064;
    local_7c = DAT_00071060;
    bfd_map_over_sections(param_1,FUN_00018770,local_b4);
    if (local_c4 != (void *)0x0) {
      free(local_c4);
    }
    free(DAT_00071064);
  }
joined_r0x0001721a:
  if (DAT_000710ac != 0) {
    iVar3 = FUN_00038fb0(param_1,DAT_0007106c,DAT_00071068,1);
    if (iVar3 == 0) {
      if (DAT_000710d0 == 0) {
        FUN_00034950();
        FUN_00015f30();
      }
    }
    else {
      iVar3 = FUN_00038c60(*(undefined4 *)PTR_stdout_0006ffdc,iVar3,param_1,DAT_0007106c,
                           PTR_bfd_demangle_0006ffe4,DAT_000710a8 != 0);
      if (iVar3 == 0) {
        uVar2 = *param_1;
        uVar7 = dcgettext(0,"%s: printing debugging information failed",5);
        FUN_000451b0(uVar7,uVar2);
        DAT_00071110 = 1;
      }
    }
  }
  if (DAT_0007106c != (void *)0x0) {
    free(DAT_0007106c);
    DAT_0007106c = (void *)0x0;
  }
  if (DAT_0007105c != (void *)0x0) {
    free(DAT_0007105c);
    DAT_0007105c = (void *)0x0;
  }
  if (DAT_00071058 != (void *)0x0) {
    free(DAT_00071058);
    DAT_00071058 = (void *)0x0;
  }
  DAT_00071068 = 0;
  DAT_00071050 = 0;
  DAT_00071054 = 0;
  return;
}

