
int main(int argc,char **argv)

{
  byte *pbVar1;
  undefined1 (*pauVar2) [16];
  undefined8 uVar3;
  defsym_list *pdVar4;
  undefined *puVar5;
  size_t sVar6;
  uint uVar7;
  uint uVar8;
  int iVar9;
  int iVar10;
  uint uVar11;
  void *__ptr;
  char **__ptr_00;
  char **ppcVar12;
  char *pcVar13;
  symbolS *s;
  segT paVar14;
  char *format;
  long lVar15;
  ulong uVar16;
  char **ppcVar17;
  char *pcVar18;
  undefined8 *puVar19;
  undefined8 *puVar20;
  char **__s;
  byte bVar21;
  char **local_1a8;
  uint local_1a0;
  uint local_19c;
  char warn_msg [50];
  stat sob;
  stat sib;
  
  bVar21 = 0;
  local_1a8 = argv;
  local_19c = argc;
  start_time = get_run_time();
  signal_init();
  setlocale(5,"");
  setlocale(0,"");
  bindtextdomain(&DAT_0013b28d,"/usr/share/locale");
  textdomain(&DAT_0013b28d);
  if (debug_memory != 0) {
    chunksize = 0x40;
  }
  myname = *local_1a8;
  xmalloc_set_program_name();
  expandargv((int *)&local_19c,&local_1a8);
  out_file_name = "a.out";
  hex_init();
  bfd_init();
  bfd_set_error_program_name(myname);
  __ptr = (void *)concat(std_shortopts_14525,md_shortopts,0);
  __ptr_00 = (char **)xmalloc(md_longopts_size + 0x580);
  puVar5 = std_longopts_14566;
  __ptr_00[0xab] = DAT_0014ef18;
  *__ptr_00 = puVar5;
  lVar15 = (long)__ptr_00 - (long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);
  puVar19 = (undefined8 *)((long)&std_longopts_14566 - lVar15);
  puVar20 = (undefined8 *)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);
  for (uVar16 = (ulong)((int)lVar15 + 0x560U >> 3); sVar6 = md_longopts_size, uVar16 != 0;
      uVar16 = uVar16 - 1) {
    *puVar20 = *puVar19;
    puVar19 = puVar19 + (ulong)bVar21 * -2 + 1;
    puVar20 = puVar20 + (ulong)bVar21 * -2 + 1;
  }
  memcpy(__ptr_00 + 0xac,md_longopts,md_longopts_size);
  uVar7 = local_19c;
  __s = local_1a8;
  pauVar2 = (undefined1 (*) [16])((long)__ptr_00 + sVar6 + 0x560);
  *pauVar2 = (undefined1  [16])0x0;
  ppcVar17 = (char **)&DAT_0013cb10;
  pauVar2[1] = (undefined1  [16])0x0;
  ppcVar12 = (char **)xmalloc((long)(int)(local_19c + 1) << 3);
  local_1a0 = 1;
  pcVar13 = *__s;
  ppcVar12[1] = (char *)0x0;
  *ppcVar12 = pcVar13;
LAB_00107958:
  while( true ) {
    uVar8 = getopt_long_only(uVar7,__s,__ptr,__ptr_00,&sib);
    pcVar13 = (char *)(ulong)uVar8;
    if (uVar8 == 0xffffffff) break;
    if (uVar8 < 0xba) {
                    /* WARNING: Could not recover jumptable at 0x00107989. Too many branches */
                    /* WARNING: Treating indirect jump as call */
      iVar9 = (*(code *)((long)*(int *)((long)ppcVar17 + (ulong)uVar8 * 4) + (long)ppcVar17))();
      return iVar9;
    }
    iVar9 = md_parse_option(uVar8,optarg);
    if (iVar9 == 0) {
      if (uVar8 != 0x76) {
        pcVar18 = optarg;
        if (optarg == (char *)0x0) {
          pcVar18 = "";
        }
        format = (char *)dcgettext(0,"unrecognized option -%c%s",5);
        as_bad(format,pcVar13,pcVar18);
                    /* WARNING: Subroutine does not return */
        exit(1);
      }
      if (printed_14511 == 0) {
        print_version_id();
      }
      verbose = 1;
    }
  }
  free(__ptr);
  free(__ptr_00);
  local_19c = local_1a0;
  local_1a8 = ppcVar12;
  riscv_after_parse_args();
  if (((1 < (int)local_19c) && (iVar9 = __xstat(1,out_file_name,(stat *)&sob), iVar9 == 0)) &&
     (1 < (int)local_19c)) {
    lVar15 = 8;
    iVar9 = 1;
    do {
      iVar10 = __xstat(1,*(char **)((long)local_1a8 + lVar15),(stat *)&sib);
      pcVar18 = out_file_name;
      if (((iVar10 == 0) && (sob.st_ino == sib.st_ino)) &&
         ((sib.st_ino != 0 && (sib.st_dev == sob.st_dev)))) {
        out_file_name = (char *)0x0;
        uVar3 = *(undefined8 *)((long)local_1a8 + lVar15);
        pcVar13 = (char *)dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);
                    /* WARNING: Subroutine does not return */
        as_fatal(pcVar13,uVar3,pcVar18);
      }
      iVar9 = iVar9 + 1;
      lVar15 = lVar15 + 8;
    } while (iVar9 < (int)local_19c);
  }
  symbol_begin();
  frag_init();
  subsegs_begin();
  read_begin();
  input_scrub_begin();
  expr_begin();
  xatexit(close_output_file);
  if (flag_print_statistics != '\0') goto LAB_00108bff;
  do {
    macro_init(flag_macro_alternate,flag_mri,0,macro_expr);
    output_file_create(out_file_name);
    if (stdoutput == (bfd *)0x0) {
                    /* WARNING: Subroutine does not return */
      as_abort("../../gas/as.c",0x519,"main");
    }
    dot_symbol_init();
    dwarf2_init();
    local_symbol_make(".gasversion.",(segT)(_bfd_std_section + 0x230),0x5a3d,
                      &predefined_address_frag);
    __ptr_00 = local_1a8;
    uVar8 = local_19c;
    while (local_1a8 = __ptr_00, local_19c = uVar8, defsyms != (defsym_list *)0x0) {
      s = symbol_new(defsyms->name,(segT)(_bfd_std_section + 0x230),defsyms->value,
                     &zero_address_frag);
      S_SET_VOLATILE(s);
      symbol_table_insert(s);
      pdVar4 = defsyms->next;
      free(defsyms);
      defsyms = pdVar4;
      __ptr_00 = local_1a8;
      uVar8 = local_19c;
    }
    __s = (char **)(ulong)uVar8;
    need_pass_2 = 0;
    text_section = subseg_new(".text",0);
    data_section = subseg_new(".data",0);
    bss_section = subseg_new(".bss",0);
    uVar11 = stdoutput->xvec->section_flags;
    bfd_set_section_flags(stdoutput,text_section,uVar11 & 0x1f);
    bfd_set_section_flags(stdoutput,data_section,uVar11 & 0x27);
    ppcVar17 = __ptr_00 + 1;
    bfd_set_section_flags(stdoutput,bss_section,uVar11 & 1);
    pbVar1 = (byte *)((long)bss_section->userdata + 8);
    *pbVar1 = *pbVar1 | 2;
    subseg_new("*ABS*",0);
    subseg_new("*UND*",0);
    reg_section = subseg_new("*GAS `reg\' section*",0);
    expr_section = subseg_new("*GAS `expr\' section*",0);
    subseg_set(text_section,0);
    md_begin();
    elf_begin();
    if (uVar8 == 1) {
LAB_00108d46:
      read_a_source_file("");
    }
    else {
      __s = __ptr_00 + (ulong)(uVar8 - 2) + 2;
      __ptr_00 = (char **)0x0;
      do {
        if (*ppcVar17 != (char *)0x0) {
          __ptr_00 = (char **)(ulong)((int)__ptr_00 + 1);
          read_a_source_file(*ppcVar17);
        }
        ppcVar17 = ppcVar17 + 1;
      } while (ppcVar17 != __s);
      if ((int)__ptr_00 == 0) goto LAB_00108d46;
    }
    cond_finish_check(-1);
    if (flag_execstack != 0 || flag_noexecstack != 0) {
      paVar14 = subseg_new(".note.GNU-stack",0);
      bfd_set_section_flags(stdoutput,paVar14,(-(uint)(flag_execstack == 0) & 0xfffffff0) + 0x18);
    }
    dwarf2_finish();
    cfi_finish();
    keep_it = 0;
    iVar9 = seen_at_least_1_file();
    if (iVar9 != 0) {
      write_object_file();
      __s = (char **)warn_msg;
      uVar8 = had_warnings();
      __ptr_00 = (char **)(ulong)uVar8;
      uVar11 = had_errors();
      ppcVar17 = (char **)(ulong)uVar11;
      pcVar18 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar8,5);
      sprintf((char *)__s,pcVar18,(ulong)uVar8);
      pcVar18 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar11,5);
      sprintf((char *)&sib,pcVar18,(ulong)uVar11);
      if ((flag_fatal_warnings != 0) && (uVar8 != 0)) {
        if (uVar11 == 0) {
          ppcVar17 = (char **)(ulong)uVar8;
          pcVar18 = (char *)dcgettext(0,"%s, treating warnings as errors",5);
          as_bad(pcVar18,__s);
        }
        else {
          ppcVar17 = (char **)(ulong)(uVar11 + uVar8);
        }
      }
      if ((int)ppcVar17 == 0) {
        keep_it = 1;
      }
      else if (flag_always_generate_output != '\0') {
        keep_it = 1;
        pcVar18 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);
        fprintf(stderr,pcVar18,&sib,__s);
      }
    }
    fflush(stderr);
    listing_print(listing_filename,argv);
    input_scrub_end();
    iVar9 = had_errors();
    if (iVar9 != 0) break;
    print_dependencies();
    xexit(0);
LAB_00108bff:
    xatexit(dump_statistics);
  } while( true );
  xexit(1);
  iVar9 = strcasecmp(pcVar13,"warning");
  if (iVar9 != 0) {
    pcVar18 = (char *)dcgettext(0,"Invalid --size-check= option: `%s\'",5);
                    /* WARNING: Subroutine does not return */
    as_fatal(pcVar18,pcVar13);
  }
  flag_allow_nonconst_size = 1;
  goto LAB_00107958;
}



/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */

void FUN_001077a0(uint param_1,long *param_2)

{
  byte *pbVar1;
  undefined1 (*pauVar2) [16];
  size_t sVar3;
  uint uVar4;
  uint uVar5;
  int iVar6;
  int iVar7;
  uint uVar8;
  void *__ptr;
  long *__ptr_00;
  long *plVar9;
  undefined8 uVar10;
  undefined8 uVar11;
  char *pcVar12;
  long lVar13;
  ulong uVar14;
  long *plVar15;
  undefined *puVar16;
  undefined8 *puVar17;
  undefined8 *puVar18;
  long *__s;
  char *__s1;
  byte bVar19;
  long *local_1a8;
  uint local_1a0;
  uint local_19c;
  long local_198 [8];
  stat local_158;
  stat local_c8;
  
  bVar19 = 0;
  local_1a8 = param_2;
  local_19c = param_1;
  _DAT_00162ec8 = FUN_0013a800();
  FUN_0011c7a0();
  setlocale(5,"");
  setlocale(0,"");
  bindtextdomain(&DAT_0013b28d,"/usr/share/locale");
  textdomain(&DAT_0013b28d);
  if (DAT_00162eac != 0) {
    DAT_00162eb0 = 0x40;
  }
  DAT_00162ee8 = *local_1a8;
  xmalloc_set_program_name();
  FUN_0013a450(&local_19c,&local_1a8);
  DAT_00163888 = "a.out";
  hex_init();
  bfd_init();
  bfd_set_error_program_name(DAT_00162ee8);
  __ptr = (void *)concat("-JLMRWZa::Dfg::I:o:vwX",PTR_s_O_g_G__0015a840,0);
  __ptr_00 = (long *)xmalloc(DAT_0015a718 + 0x580);
  puVar16 = PTR_s_alternate_0014e9c0;
  __ptr_00[0xab] = DAT_0014ef18;
  *__ptr_00 = (long)puVar16;
  lVar13 = (long)__ptr_00 - (long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);
  puVar17 = (undefined8 *)((long)&PTR_s_alternate_0014e9c0 - lVar13);
  puVar18 = (undefined8 *)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);
  for (uVar14 = (ulong)((int)lVar13 + 0x560U >> 3); sVar3 = DAT_0015a718, uVar14 != 0;
      uVar14 = uVar14 - 1) {
    *puVar18 = *puVar17;
    puVar17 = puVar17 + (ulong)bVar19 * -2 + 1;
    puVar18 = puVar18 + (ulong)bVar19 * -2 + 1;
  }
  memcpy(__ptr_00 + 0xac,&PTR_s_march_0015a740,DAT_0015a718);
  uVar4 = local_19c;
  __s = local_1a8;
  pauVar2 = (undefined1 (*) [16])((long)__ptr_00 + sVar3 + 0x560);
  *pauVar2 = (undefined1  [16])0x0;
  plVar15 = (long *)&DAT_0013cb10;
  pauVar2[1] = (undefined1  [16])0x0;
  plVar9 = (long *)xmalloc((long)(int)(local_19c + 1) << 3);
  local_1a0 = 1;
  lVar13 = *__s;
  plVar9[1] = 0;
  *plVar9 = lVar13;
LAB_00107958:
  while( true ) {
    uVar5 = getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8);
    __s1 = (char *)(ulong)uVar5;
    if (uVar5 == 0xffffffff) break;
    if (uVar5 < 0xba) {
                    /* WARNING: Could not recover jumptable at 0x00107989. Too many branches */
                    /* WARNING: Treating indirect jump as call */
      (*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();
      return;
    }
    iVar6 = FUN_001347a0(__s1,optarg);
    if (iVar6 == 0) {
      if (uVar5 != 0x76) {
        puVar16 = optarg;
        if (optarg == (undefined *)0x0) {
          puVar16 = &DAT_00142ab6;
        }
        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);
        FUN_0011c1c0(uVar11,__s1,puVar16);
                    /* WARNING: Subroutine does not return */
        exit(1);
      }
      if (DAT_00162ebc == 0) {
        FUN_0010a980();
      }
      _DAT_00162ea8 = 1;
    }
  }
  free(__ptr);
  free(__ptr_00);
  local_19c = local_1a0;
  local_1a8 = plVar9;
  FUN_00134ab0();
  if (((1 < (int)local_19c) && (iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0)) &&
     (1 < (int)local_19c)) {
    lVar13 = 8;
    iVar6 = 1;
    do {
      iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8);
      pcVar12 = DAT_00163888;
      if (((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&
         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))) {
        DAT_00163888 = (char *)0x0;
        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);
        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);
                    /* WARNING: Subroutine does not return */
        FUN_0011c360(uVar10,uVar11,pcVar12);
      }
      iVar6 = iVar6 + 1;
      lVar13 = lVar13 + 8;
    } while (iVar6 < (int)local_19c);
  }
  FUN_0012a770();
  FUN_00115310();
  FUN_00125b60();
  FUN_0011da80();
  FUN_00116770();
  FUN_00112f40();
  FUN_0013abc0(FUN_0010a950);
  if (DAT_00163940 != '\0') goto LAB_00108bff;
  do {
    FUN_0011a8a0(DAT_00162ec0,DAT_00163950,0,FUN_0010a810);
    FUN_0011c840(DAT_00163888);
    if (DAT_00163a50 == 0) {
                    /* WARNING: Subroutine does not return */
      FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7);
    }
    FUN_0012a810();
    FUN_0010e380();
    FUN_00126440(".gasversion.",0x15aad0,0x5a3d,&DAT_001638c0);
    __ptr_00 = local_1a8;
    uVar5 = local_19c;
    while (local_1a8 = __ptr_00, local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0) {
      uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800);
      FUN_00129e10(uVar11);
      FUN_00126560(uVar11);
      puVar17 = (undefined8 *)*DAT_00162ed0;
      free(DAT_00162ed0);
      DAT_00162ed0 = puVar17;
      __ptr_00 = local_1a8;
      uVar5 = local_19c;
    }
    __s = (long *)(ulong)uVar5;
    DAT_001637cc = 0;
    DAT_00163930 = FUN_00125ca0(".text",0);
    DAT_00163868 = FUN_00125ca0(".data",0);
    DAT_001637d0 = FUN_00125ca0(&DAT_0013b3b5,0);
    uVar8 = *(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18);
    bfd_set_section_flags(DAT_00163a50,DAT_00163930,uVar8 & 0x1f);
    bfd_set_section_flags(DAT_00163a50,DAT_00163868,uVar8 & 0x27);
    plVar15 = __ptr_00 + 1;
    bfd_set_section_flags(DAT_00163a50,DAT_001637d0,uVar8 & 1);
    pbVar1 = (byte *)(*(long *)(DAT_001637d0 + 0xa8) + 8);
    *pbVar1 = *pbVar1 | 2;
    FUN_00125ca0("*ABS*",0);
    FUN_00125ca0(&DAT_0013b3c0,0);
    DAT_00163898 = FUN_00125ca0("*GAS `reg\' section*",0);
    DAT_001637c0 = FUN_00125ca0("*GAS `expr\' section*",0);
    FUN_00125d00(DAT_00163930,0);
    FUN_00132b90();
    FUN_00135be0();
    if (uVar5 == 1) {
LAB_00108d46:
      FUN_001239f0(&DAT_00142ab6);
    }
    else {
      __s = __ptr_00 + (ulong)(uVar5 - 2) + 2;
      __ptr_00 = (long *)0x0;
      do {
        if (*plVar15 != 0) {
          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);
          FUN_001239f0();
        }
        plVar15 = plVar15 + 1;
      } while (plVar15 != __s);
      if ((int)__ptr_00 == 0) goto LAB_00108d46;
    }
    FUN_0010c560(0xffffffff);
    if (DAT_00163878 != 0 || _DAT_001638a8 != 0) {
      uVar11 = FUN_00125ca0(".note.GNU-stack",0);
      bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18);
    }
    FUN_0010e390();
    FUN_00111a40();
    DAT_00162ee0 = 0;
    iVar6 = FUN_00116d00();
    if (iVar6 != 0) {
      FUN_0012e000();
      __s = local_198;
      uVar5 = FUN_0011bf10();
      __ptr_00 = (long *)(ulong)uVar5;
      uVar8 = FUN_0011bf20();
      plVar15 = (long *)(ulong)uVar8;
      pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5);
      sprintf((char *)__s,pcVar12,(ulong)uVar5);
      pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5);
      sprintf((char *)&local_c8,pcVar12,(ulong)uVar8);
      if ((DAT_001637f4 != 0) && (uVar5 != 0)) {
        if (uVar8 == 0) {
          plVar15 = (long *)(ulong)uVar5;
          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);
          FUN_0011c1c0(uVar11,__s);
        }
        else {
          plVar15 = (long *)(ulong)(uVar8 + uVar5);
        }
      }
      if ((int)plVar15 == 0) {
        DAT_00162ee0 = 1;
      }
      else if (DAT_00163870 != '\0') {
        DAT_00162ee0 = 1;
        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);
        fprintf(stderr,pcVar12,&local_c8,__s);
      }
    }
    fflush(stderr);
    FUN_00117f20(DAT_00162ed8,param_2);
    FUN_001167a0();
    iVar6 = FUN_0011bf20();
    if (iVar6 != 0) break;
    FUN_0010c930();
    xexit(0);
LAB_00108bff:
    FUN_0013abc0(FUN_0010a8a0);
  } while( true );
  xexit(1);
  iVar6 = strcasecmp(__s1,"warning");
  if (iVar6 != 0) {
    uVar11 = dcgettext(0,"Invalid --size-check= option: `%s\'",5);
                    /* WARNING: Subroutine does not return */
    FUN_0011c360(uVar11,__s1);
  }
  DAT_001638b0 = 1;
  goto LAB_00107958;
}


PUSH R15
PUSH R14
PUSH R13
PUSH R12
PUSH RBP
PUSH RBX
SUB RSP,0x198
MOV dword ptr [RSP + 0x2c],EDI
MOV qword ptr [RSP + 0x20],RSI
MOV qword ptr [RSP + 0x10],RSI
CALL 0x0013a800
MOV qword ptr [0x00162ec8],RAX
CALL 0x0011c7a0
LEA RSI,[0x142ab6]
MOV EDI,0x5
CALL 0x00107570
LEA RSI,[0x142ab6]
XOR EDI,EDI
CALL 0x00107570
LEA RSI,[0x13b27b]
LEA RDI,[0x13b28d]
CALL 0x00107190
LEA RDI,[0x13b28d]
CALL 0x00107160
MOV EAX,dword ptr [0x00162eac]
TEST EAX,EAX
JZ 0x00107822
MOV dword ptr [0x00162eb0],0x40
MOV RAX,qword ptr [RSP + 0x20]
LEA R14,[RSP + 0x100]
MOV RDI,qword ptr [RAX]
MOV qword ptr [0x00162ee8],RDI
CALL 0x00107300
LEA RSI,[RSP + 0x20]
LEA RDI,[RSP + 0x2c]
CALL 0x0013a450
LEA RAX,[0x13b291]
MOV qword ptr [0x00163888],RAX
CALL 0x001072d0
CALL 0x00107390
MOV RDI,qword ptr [0x00162ee8]
CALL 0x001075b0
MOV RSI,qword ptr [0x0015a840]
XOR EDX,EDX
XOR EAX,EAX
LEA RDI,[0x13cee0]
CALL 0x00107280
MOV qword ptr [RSP],RAX
MOV RAX,qword ptr [0x0015a718]
LEA RDI,[RAX + 0x580]
CALL 0x00107778
MOV RDX,qword ptr [0x0014ef18]
LEA RSI,[0x14e9c0]
MOV RBP,RAX
MOV RAX,qword ptr [0x0014e9c0]
LEA RDI,[RBP + 0x8]
MOV RCX,RBP
MOV qword ptr [RBP + 0x558],RDX
AND RDI,-0x8
MOV qword ptr [RBP],RAX
LEA RAX,[RBP + 0x560]
SUB RCX,RDI
SUB RSI,RCX
ADD ECX,0x560
SHR ECX,0x3
MOVSQ.REP RDI,RSI
LEA RSI,[0x15a740]
MOV RDI,RAX
MOV RBX,qword ptr [0x0015a718]
MOV RDX,RBX
CALL 0x00107460
MOV R13D,dword ptr [RSP + 0x2c]
PXOR XMM0,XMM0
LEA RAX,[RBP + RBX*0x1 + 0x560]
MOV R12,qword ptr [RSP + 0x20]
MOVUPS xmmword ptr [RAX],XMM0
LEA RBX,[0x13cb10]
LEA EDI,[R13 + 0x1]
MOVUPS xmmword ptr [RAX + 0x10],XMM0
MOVSXD RDI,EDI
SHL RDI,0x3
CALL 0x00107778
MOV dword ptr [RSP + 0x28],0x1
MOV RCX,RAX
MOV qword ptr [RSP + 0x8],RAX
MOV RAX,qword ptr [R12]
MOV qword ptr [RCX + 0x8],0x0
MOV qword ptr [RCX],RAX
NOP word ptr [RAX + RAX*0x1]
MOV RDX,qword ptr [RSP]
MOV R8,R14
MOV RCX,RBP
MOV RSI,R12
MOV EDI,R13D
CALL 0x00107370
MOV R15D,EAX
CMP EAX,-0x1
JZ 0x001087b8
CMP EAX,0xb9
JA 0x001079c3
MOV EAX,EAX
MOVSXD RAX,dword ptr [RBX + RAX*0x4]
ADD RAX,RBX
JMP RAX
MOV RSI,qword ptr [0x0015a880]
MOV EDI,R15D
CALL 0x001347a0
TEST EAX,EAX
JNZ 0x00107958
CMP R15D,0x76
JNZ 0x00108c56
CMP dword ptr [0x00162ebc],0x0
JZ 0x001086ea
MOV dword ptr [0x00162ea8],0x1
JMP 0x00107958
CALL 0x0010a980
JMP 0x001079ed
MOV RDI,qword ptr [RSP]
CALL 0x00107770
MOV RDI,RBP
CALL 0x00107770
MOV EAX,dword ptr [RSP + 0x28]
MOV dword ptr [RSP + 0x2c],EAX
MOV RAX,qword ptr [RSP + 0x8]
MOV qword ptr [RSP + 0x20],RAX
CALL 0x00134ab0
CMP dword ptr [RSP + 0x2c],0x1
JLE 0x001088a8
MOV RSI,qword ptr [0x00163888]
LEA RDX,[RSP + 0x70]
MOV EDI,0x1
CALL 0x00107490
TEST EAX,EAX
JNZ 0x001088a8
CMP dword ptr [RSP + 0x2c],0x1
JLE 0x001088a8
MOV EBX,0x8
MOV EBP,0x1
JMP 0x0010882d
ADD EBP,0x1
ADD RBX,0x8
CMP dword ptr [RSP + 0x2c],EBP
JLE 0x001088a8
MOV RAX,qword ptr [RSP + 0x20]
MOV RDX,R14
MOV EDI,0x1
MOV RSI,qword ptr [RAX + RBX*0x1]
CALL 0x00107490
TEST EAX,EAX
JNZ 0x00108820
MOV RAX,qword ptr [RSP + 0x108]
CMP qword ptr [RSP + 0x78],RAX
JNZ 0x00108820
TEST RAX,RAX
JZ 0x00108820
MOV RAX,qword ptr [RSP + 0x70]
CMP qword ptr [RSP + 0x100],RAX
JNZ 0x00108820
MOV RAX,qword ptr [RSP + 0x20]
MOV RBP,qword ptr [0x00163888]
MOV EDX,0x5
XOR EDI,EDI
MOV qword ptr [0x00163888],0x0
LEA RSI,[0x13ca90]
MOV RBX,qword ptr [RAX + RBX*0x1]
CALL 0x001071c0
MOV RDX,RBP
MOV RDI,RAX
MOV RSI,RBX
XOR EAX,EAX
CALL 0x0011c360
CALL 0x0012a770
CALL 0x00115310
CALL 0x00125b60
CALL 0x0011da80
CALL 0x00116770
CALL 0x00112f40
LEA RDI,[0x10a950]
CALL 0x0013abc0
CMP byte ptr [0x00163940],0x0
JNZ 0x00108bff
MOV ESI,dword ptr [0x00163950]
MOV EDI,dword ptr [0x00162ec0]
XOR EDX,EDX
LEA RCX,[0x10a810]
CALL 0x0011a8a0
MOV RDI,qword ptr [0x00163888]
CALL 0x0011c840
CMP qword ptr [0x00163a50],0x0
JZ 0x00108c10
CALL 0x0012a810
CALL 0x0010e380
LEA RCX,[0x1638c0]
MOV EDX,0x5a3d
LEA RSI,[0x15aad0]
LEA RDI,[0x13b39c]
CALL 0x00126440
MOV RBX,qword ptr [0x00162ed0]
TEST RBX,RBX
JZ 0x00108995
LEA RBP,[0x163800]
NOP
MOV RDX,qword ptr [RBX + 0x10]
MOV RDI,qword ptr [RBX + 0x8]
MOV RCX,RBP
LEA RSI,[0x15aad0]
CALL 0x00127c60
MOV RBX,RAX
MOV RDI,RAX
CALL 0x00129e10
MOV RDI,RBX
CALL 0x00126560
MOV RDI,qword ptr [0x00162ed0]
MOV RBX,qword ptr [RDI]
CALL 0x00107770
MOV qword ptr [0x00162ed0],RBX
TEST RBX,RBX
JNZ 0x00108950
XOR ESI,ESI
MOV RBP,qword ptr [RSP + 0x20]
MOV R12D,dword ptr [RSP + 0x2c]
LEA RDI,[0x13b3a9]
MOV dword ptr [0x001637cc],0x0
CALL 0x00125ca0
XOR ESI,ESI
LEA RDI,[0x13b3af]
MOV qword ptr [0x00163930],RAX
CALL 0x00125ca0
XOR ESI,ESI
LEA RDI,[0x13b3b5]
MOV qword ptr [0x00163868],RAX
CALL 0x00125ca0
MOV RDI,qword ptr [0x00163a50]
MOV RSI,qword ptr [0x00163930]
MOV qword ptr [0x001637d0],RAX
MOV RAX,qword ptr [RDI + 0x8]
MOV EBX,dword ptr [RAX + 0x18]
MOV EDX,EBX
AND EDX,0x1f
CALL 0x00107700
MOV EDX,EBX
AND EBX,0x1
MOV RSI,qword ptr [0x00163868]
MOV RDI,qword ptr [0x00163a50]
AND EDX,0x27
CALL 0x00107700
MOV RSI,qword ptr [0x001637d0]
MOV RDI,qword ptr [0x00163a50]
MOV EDX,EBX
LEA RBX,[RBP + 0x8]
CALL 0x00107700
MOV RAX,qword ptr [0x001637d0]
XOR ESI,ESI
LEA RDI,[0x13b3ba]
MOV RAX,qword ptr [RAX + 0xa8]
OR byte ptr [RAX + 0x8],0x2
CALL 0x00125ca0
XOR ESI,ESI
LEA RDI,[0x13b3c0]
CALL 0x00125ca0
XOR ESI,ESI
LEA RDI,[0x13b3c6]
CALL 0x00125ca0
XOR ESI,ESI
LEA RDI,[0x13b3da]
MOV qword ptr [0x00163898],RAX
CALL 0x00125ca0
MOV RDI,qword ptr [0x00163930]
XOR ESI,ESI
MOV qword ptr [0x001637c0],RAX
CALL 0x00125d00
CALL 0x00132b90
CALL 0x00135be0
CMP R12D,0x1
JZ 0x00108d46
LEA EAX,[R12 + -0x2]
LEA R12,[RBP + RAX*0x8 + 0x10]
XOR EBP,EBP
NOP dword ptr [RAX]
MOV RDI,qword ptr [RBX]
TEST RDI,RDI
JZ 0x00108ad8
ADD EBP,0x1
CALL 0x001239f0
ADD RBX,0x8
CMP RBX,R12
JNZ 0x00108ac8
TEST EBP,EBP
JZ 0x00108d46
OR EDI,0xffffffff
CALL 0x0010c560
MOV EAX,dword ptr [0x00163878]
OR EAX,dword ptr [0x001638a8]
JZ 0x00108b2b
XOR ESI,ESI
LEA RDI,[0x13b3ef]
CALL 0x00125ca0
CMP dword ptr [0x00163878],0x1
MOV RDI,qword ptr [0x00163a50]
SBB EDX,EDX
MOV RSI,RAX
AND EDX,0xfffffff0
ADD EDX,0x18
CALL 0x00107700
CALL 0x0010e390
CALL 0x00111a40
MOV dword ptr [0x00162ee0],0x0
CALL 0x00116d00
TEST EAX,EAX
JNZ 0x00108cb0
MOV RDI,qword ptr [0x0015ad00]
CALL 0x001074d0
MOV RSI,qword ptr [RSP + 0x10]
MOV RDI,qword ptr [0x00162ed8]
CALL 0x00117f20
CALL 0x001167a0
CALL 0x0011bf20
TEST EAX,EAX
JZ 0x00108bf3
MOV EDI,0x1
CALL 0x00107630
LEA RSI,[0x13b40e]
MOV RDI,R15
CALL 0x00107070
TEST EAX,EAX
JNZ 0x00108e64
MOV dword ptr [0x001638b0],0x1
JMP 0x00107958
CALL 0x0010c930
XOR EDI,EDI
CALL 0x00107630
LEA RDI,[0x10a8a0]
CALL 0x0013abc0
JMP 0x001088df
LEA RDX,[0x13cef7]
MOV ESI,0x519
LEA RDI,[0x13b38d]
CALL 0x0011c450
MOV RBX,qword ptr [0x0015a880]
TEST RBX,RBX
JZ 0x00108ea8
MOV EDX,0x5
LEA RSI,[0x13b297]
XOR EDI,EDI
CALL 0x001071c0
MOV RDX,RBX
MOV ESI,R15D
MOV RDI,RAX
XOR EAX,EAX
CALL 0x0011c1c0
MOV EDI,0x1
CALL 0x001076c0
CALL 0x0012e000
LEA R12,[RSP + 0x30]
CALL 0x0011bf10
MOV EBP,EAX
CALL 0x0011bf20
MOVSXD RCX,EBP
MOV R8D,0x5
XOR EDI,EDI
LEA RDX,[0x13b3ff]
LEA RSI,[0x13b40b]
MOV EBX,EAX
CALL 0x00107640
MOV EDX,EBP
MOV RDI,R12
MOV RSI,RAX
XOR EAX,EAX
CALL 0x001076b0
XOR EDI,EDI
MOVSXD RCX,EBX
MOV R8D,0x5
LEA RDX,[0x13b416]
LEA RSI,[0x13b420]
CALL 0x00107640
MOV EDX,EBX
MOV RDI,R14
MOV RSI,RAX
XOR EAX,EAX
CALL 0x001076b0
CMP dword ptr [0x001637f4],0x0
JZ 0x00108d33
TEST EBP,EBP
JNZ 0x00108e00
TEST EBX,EBX
JNZ 0x00108d83
MOV dword ptr [0x00162ee0],0x1
JMP 0x00108b4c
LEA RDI,[0x142ab6]
CALL 0x001239f0
JMP 0x00108ae9
CMP byte ptr [0x00163870],0x0
JZ 0x00108b4c
XOR EDI,EDI
MOV EDX,0x5
LEA RSI,[0x13cae8]
MOV dword ptr [0x00162ee0],0x1
CALL 0x001071c0
MOV RDI,qword ptr [0x0015ad00]
MOV RCX,R12
MOV RDX,R14
MOV RSI,RAX
XOR EAX,EAX
CALL 0x00107400
JMP 0x00108b4c
XOR EDI,EDI
CALL 0x001071c0
MOV RSI,R15
MOV RDI,RAX
XOR EAX,EAX
CALL 0x0011c360
TEST EBX,EBX
JZ 0x00108e0b
ADD EBX,EBP
JMP 0x00108d33
MOV EDX,0x5
LEA RSI,[0x13cac8]
XOR EDI,EDI
ADD EBX,EBP
CALL 0x001071c0
MOV RSI,R12
MOV RDI,RAX
XOR EAX,EAX
CALL 0x0011c1c0
JMP 0x00108d33
MOV EDX,0x5
LEA RSI,[0x13c9e0]
JMP 0x00108dec
LEA RBX,[0x142ab6]
JMP 0x00108c66
(translation_unit "/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */\n\nvoid FUN_001077a0(uint param_1,long *param_2)\n\n{\n  byte *pbVar1;\n  undefined1 (*pauVar2) [16];\n  size_t sVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  uint uVar8;\n  void *__ptr;\n  long *__ptr_00;\n  long *plVar9;\n  undefined8 uVar10;\n  undefined8 uVar11;\n  char *pcVar12;\n  long lVar13;\n  ulong uVar14;\n  long *plVar15;\n  undefined *puVar16;\n  undefined8 *puVar17;\n  undefined8 *puVar18;\n  long *__s;\n  char *__s1;\n  byte bVar19;\n  long *local_1a8;\n  uint local_1a0;\n  uint local_19c;\n  long local_198 [8];\n  stat local_158;\n  stat local_c8;\n  \n  bVar19 = 0;\n  local_1a8 = param_2;\n  local_19c = param_1;\n  _DAT_00162ec8 = FUN_0013a800();\n  FUN_0011c7a0();\n  setlocale(5,"");\n  setlocale(0,"");\n  bindtextdomain(&DAT_0013b28d,"/usr/share/locale");\n  textdomain(&DAT_0013b28d);\n  if (DAT_00162eac != 0) {\n    DAT_00162eb0 = 0x40;\n  }\n  DAT_00162ee8 = *local_1a8;\n  xmalloc_set_program_name();\n  FUN_0013a450(&local_19c,&local_1a8);\n  DAT_00163888 = "a.out";\n  hex_init();\n  bfd_init();\n  bfd_set_error_program_name(DAT_00162ee8);\n  __ptr = (void *)concat("-JLMRWZa::Dfg::I:o:vwX",PTR_s_O_g_G__0015a840,0);\n  __ptr_00 = (long *)xmalloc(DAT_0015a718 + 0x580);\n  puVar16 = PTR_s_alternate_0014e9c0;\n  __ptr_00[0xab] = DAT_0014ef18;\n  *__ptr_00 = (long)puVar16;\n  lVar13 = (long)__ptr_00 - (long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);\n  puVar17 = (undefined8 *)((long)&PTR_s_alternate_0014e9c0 - lVar13);\n  puVar18 = (undefined8 *)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);\n  for (uVar14 = (ulong)((int)lVar13 + 0x560U >> 3); sVar3 = DAT_0015a718, uVar14 != 0;\n      uVar14 = uVar14 - 1) {\n    *puVar18 = *puVar17;\n    puVar17 = puVar17 + (ulong)bVar19 * -2 + 1;\n    puVar18 = puVar18 + (ulong)bVar19 * -2 + 1;\n  }\n  memcpy(__ptr_00 + 0xac,&PTR_s_march_0015a740,DAT_0015a718);\n  uVar4 = local_19c;\n  __s = local_1a8;\n  pauVar2 = (undefined1 (*) [16])((long)__ptr_00 + sVar3 + 0x560);\n  *pauVar2 = (undefined1  [16])0x0;\n  plVar15 = (long *)&DAT_0013cb10;\n  pauVar2[1] = (undefined1  [16])0x0;\n  plVar9 = (long *)xmalloc((long)(int)(local_19c + 1) << 3);\n  local_1a0 = 1;\n  lVar13 = *__s;\n  plVar9[1] = 0;\n  *plVar9 = lVar13;\nLAB_00107958:\n  while( true ) {\n    uVar5 = getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8);\n    __s1 = (char *)(ulong)uVar5;\n    if (uVar5 == 0xffffffff) break;\n    if (uVar5 < 0xba) {\n                    /* WARNING: Could not recover jumptable at 0x00107989. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      (*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();\n      return;\n    }\n    iVar6 = FUN_001347a0(__s1,optarg);\n    if (iVar6 == 0) {\n      if (uVar5 != 0x76) {\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    /* WARNING: Subroutine does not return */\n        exit(1);\n      }\n      if (DAT_00162ebc == 0) {\n        FUN_0010a980();\n      }\n      _DAT_00162ea8 = 1;\n    }\n  }\n  free(__ptr);\n  free(__ptr_00);\n  local_19c = local_1a0;\n  local_1a8 = plVar9;\n  FUN_00134ab0();\n  if (((1 < (int)local_19c) && (iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0)) &&\n     (1 < (int)local_19c)) {\n    lVar13 = 8;\n    iVar6 = 1;\n    do {\n      iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8);\n      pcVar12 = DAT_00163888;\n      if (((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))) {\n        DAT_00163888 = (char *)0x0;\n        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);\n        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    /* WARNING: Subroutine does not return */\n        FUN_0011c360(uVar10,uVar11,pcVar12);\n      }\n      iVar6 = iVar6 + 1;\n      lVar13 = lVar13 + 8;\n    } while (iVar6 < (int)local_19c);\n  }\n  FUN_0012a770();\n  FUN_00115310();\n  FUN_00125b60();\n  FUN_0011da80();\n  FUN_00116770();\n  FUN_00112f40();\n  FUN_0013abc0(FUN_0010a950);\n  if (DAT_00163940 != '\0') goto LAB_00108bff;\n  do {\n    FUN_0011a8a0(DAT_00162ec0,DAT_00163950,0,FUN_0010a810);\n    FUN_0011c840(DAT_00163888);\n    if (DAT_00163a50 == 0) {\n                    /* WARNING: Subroutine does not return */\n      FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7);\n    }\n    FUN_0012a810();\n    FUN_0010e380();\n    FUN_00126440(".gasversion.",0x15aad0,0x5a3d,&DAT_001638c0);\n    __ptr_00 = local_1a8;\n    uVar5 = local_19c;\n    while (local_1a8 = __ptr_00, local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0) {\n      uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800);\n      FUN_00129e10(uVar11);\n      FUN_00126560(uVar11);\n      puVar17 = (undefined8 *)*DAT_00162ed0;\n      free(DAT_00162ed0);\n      DAT_00162ed0 = puVar17;\n      __ptr_00 = local_1a8;\n      uVar5 = local_19c;\n    }\n    __s = (long *)(ulong)uVar5;\n    DAT_001637cc = 0;\n    DAT_00163930 = FUN_00125ca0(".text",0);\n    DAT_00163868 = FUN_00125ca0(".data",0);\n    DAT_001637d0 = FUN_00125ca0(&DAT_0013b3b5,0);\n    uVar8 = *(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163930,uVar8 & 0x1f);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163868,uVar8 & 0x27);\n    plVar15 = __ptr_00 + 1;\n    bfd_set_section_flags(DAT_00163a50,DAT_001637d0,uVar8 & 1);\n    pbVar1 = (byte *)(*(long *)(DAT_001637d0 + 0xa8) + 8);\n    *pbVar1 = *pbVar1 | 2;\n    FUN_00125ca0("*ABS*",0);\n    FUN_00125ca0(&DAT_0013b3c0,0);\n    DAT_00163898 = FUN_00125ca0("*GAS `reg\' section*",0);\n    DAT_001637c0 = FUN_00125ca0("*GAS `expr\' section*",0);\n    FUN_00125d00(DAT_00163930,0);\n    FUN_00132b90();\n    FUN_00135be0();\n    if (uVar5 == 1) {\nLAB_00108d46:\n      FUN_001239f0(&DAT_00142ab6);\n    }\n    else {\n      __s = __ptr_00 + (ulong)(uVar5 - 2) + 2;\n      __ptr_00 = (long *)0x0;\n      do {\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      } while (plVar15 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }\n    FUN_0010c560(0xffffffff);\n    if (DAT_00163878 != 0 || _DAT_001638a8 != 0) {\n      uVar11 = FUN_00125ca0(".note.GNU-stack",0);\n      bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18);\n    }\n    FUN_0010e390();\n    FUN_00111a40();\n    DAT_00162ee0 = 0;\n    iVar6 = FUN_00116d00();\n    if (iVar6 != 0) {\n      FUN_0012e000();\n      __s = local_198;\n      uVar5 = FUN_0011bf10();\n      __ptr_00 = (long *)(ulong)uVar5;\n      uVar8 = FUN_0011bf20();\n      plVar15 = (long *)(ulong)uVar8;\n      pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5);\n      sprintf((char *)__s,pcVar12,(ulong)uVar5);\n      pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5);\n      sprintf((char *)&local_c8,pcVar12,(ulong)uVar8);\n      if ((DAT_001637f4 != 0) && (uVar5 != 0)) {\n        if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }\n      }\n      if ((int)plVar15 == 0) {\n        DAT_00162ee0 = 1;\n      }\n      else if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }\n    }\n    fflush(stderr);\n    FUN_00117f20(DAT_00162ed8,param_2);\n    FUN_001167a0();\n    iVar6 = FUN_0011bf20();\n    if (iVar6 != 0) break;\n    FUN_0010c930();\n    xexit(0);\nLAB_00108bff:\n    FUN_0013abc0(FUN_0010a8a0);\n  } while( true );\n  xexit(1);\n  iVar6 = strcasecmp(__s1,"warning");\n  if (iVar6 != 0) {\n    uVar11 = dcgettext(0,"Invalid --size-check= option: `%s\'",5);\n                    /* WARNING: Subroutine does not return */\n    FUN_0011c360(uVar11,__s1);\n  }\n  DAT_001638b0 = 1;\n  goto LAB_00107958;\n}\n\n" comment (function_definition "void FUN_001077a0(uint param_1,long *param_2)\n\n{\n  byte *pbVar1;\n  undefined1 (*pauVar2) [16];\n  size_t sVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  uint uVar8;\n  void *__ptr;\n  long *__ptr_00;\n  long *plVar9;\n  undefined8 uVar10;\n  undefined8 uVar11;\n  char *pcVar12;\n  long lVar13;\n  ulong uVar14;\n  long *plVar15;\n  undefined *puVar16;\n  undefined8 *puVar17;\n  undefined8 *puVar18;\n  long *__s;\n  char *__s1;\n  byte bVar19;\n  long *local_1a8;\n  uint local_1a0;\n  uint local_19c;\n  long local_198 [8];\n  stat local_158;\n  stat local_c8;\n  \n  bVar19 = 0;\n  local_1a8 = param_2;\n  local_19c = param_1;\n  _DAT_00162ec8 = FUN_0013a800();\n  FUN_0011c7a0();\n  setlocale(5,"");\n  setlocale(0,"");\n  bindtextdomain(&DAT_0013b28d,"/usr/share/locale");\n  textdomain(&DAT_0013b28d);\n  if (DAT_00162eac != 0) {\n    DAT_00162eb0 = 0x40;\n  }\n  DAT_00162ee8 = *local_1a8;\n  xmalloc_set_program_name();\n  FUN_0013a450(&local_19c,&local_1a8);\n  DAT_00163888 = "a.out";\n  hex_init();\n  bfd_init();\n  bfd_set_error_program_name(DAT_00162ee8);\n  __ptr = (void *)concat("-JLMRWZa::Dfg::I:o:vwX",PTR_s_O_g_G__0015a840,0);\n  __ptr_00 = (long *)xmalloc(DAT_0015a718 + 0x580);\n  puVar16 = PTR_s_alternate_0014e9c0;\n  __ptr_00[0xab] = DAT_0014ef18;\n  *__ptr_00 = (long)puVar16;\n  lVar13 = (long)__ptr_00 - (long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);\n  puVar17 = (undefined8 *)((long)&PTR_s_alternate_0014e9c0 - lVar13);\n  puVar18 = (undefined8 *)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);\n  for (uVar14 = (ulong)((int)lVar13 + 0x560U >> 3); sVar3 = DAT_0015a718, uVar14 != 0;\n      uVar14 = uVar14 - 1) {\n    *puVar18 = *puVar17;\n    puVar17 = puVar17 + (ulong)bVar19 * -2 + 1;\n    puVar18 = puVar18 + (ulong)bVar19 * -2 + 1;\n  }\n  memcpy(__ptr_00 + 0xac,&PTR_s_march_0015a740,DAT_0015a718);\n  uVar4 = local_19c;\n  __s = local_1a8;\n  pauVar2 = (undefined1 (*) [16])((long)__ptr_00 + sVar3 + 0x560);\n  *pauVar2 = (undefined1  [16])0x0;\n  plVar15 = (long *)&DAT_0013cb10;\n  pauVar2[1] = (undefined1  [16])0x0;\n  plVar9 = (long *)xmalloc((long)(int)(local_19c + 1) << 3);\n  local_1a0 = 1;\n  lVar13 = *__s;\n  plVar9[1] = 0;\n  *plVar9 = lVar13;\nLAB_00107958:\n  while( true ) {\n    uVar5 = getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8);\n    __s1 = (char *)(ulong)uVar5;\n    if (uVar5 == 0xffffffff) break;\n    if (uVar5 < 0xba) {\n                    /* WARNING: Could not recover jumptable at 0x00107989. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      (*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();\n      return;\n    }\n    iVar6 = FUN_001347a0(__s1,optarg);\n    if (iVar6 == 0) {\n      if (uVar5 != 0x76) {\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    /* WARNING: Subroutine does not return */\n        exit(1);\n      }\n      if (DAT_00162ebc == 0) {\n        FUN_0010a980();\n      }\n      _DAT_00162ea8 = 1;\n    }\n  }\n  free(__ptr);\n  free(__ptr_00);\n  local_19c = local_1a0;\n  local_1a8 = plVar9;\n  FUN_00134ab0();\n  if (((1 < (int)local_19c) && (iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0)) &&\n     (1 < (int)local_19c)) {\n    lVar13 = 8;\n    iVar6 = 1;\n    do {\n      iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8);\n      pcVar12 = DAT_00163888;\n      if (((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))) {\n        DAT_00163888 = (char *)0x0;\n        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);\n        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    /* WARNING: Subroutine does not return */\n        FUN_0011c360(uVar10,uVar11,pcVar12);\n      }\n      iVar6 = iVar6 + 1;\n      lVar13 = lVar13 + 8;\n    } while (iVar6 < (int)local_19c);\n  }\n  FUN_0012a770();\n  FUN_00115310();\n  FUN_00125b60();\n  FUN_0011da80();\n  FUN_00116770();\n  FUN_00112f40();\n  FUN_0013abc0(FUN_0010a950);\n  if (DAT_00163940 != '\0') goto LAB_00108bff;\n  do {\n    FUN_0011a8a0(DAT_00162ec0,DAT_00163950,0,FUN_0010a810);\n    FUN_0011c840(DAT_00163888);\n    if (DAT_00163a50 == 0) {\n                    /* WARNING: Subroutine does not return */\n      FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7);\n    }\n    FUN_0012a810();\n    FUN_0010e380();\n    FUN_00126440(".gasversion.",0x15aad0,0x5a3d,&DAT_001638c0);\n    __ptr_00 = local_1a8;\n    uVar5 = local_19c;\n    while (local_1a8 = __ptr_00, local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0) {\n      uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800);\n      FUN_00129e10(uVar11);\n      FUN_00126560(uVar11);\n      puVar17 = (undefined8 *)*DAT_00162ed0;\n      free(DAT_00162ed0);\n      DAT_00162ed0 = puVar17;\n      __ptr_00 = local_1a8;\n      uVar5 = local_19c;\n    }\n    __s = (long *)(ulong)uVar5;\n    DAT_001637cc = 0;\n    DAT_00163930 = FUN_00125ca0(".text",0);\n    DAT_00163868 = FUN_00125ca0(".data",0);\n    DAT_001637d0 = FUN_00125ca0(&DAT_0013b3b5,0);\n    uVar8 = *(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163930,uVar8 & 0x1f);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163868,uVar8 & 0x27);\n    plVar15 = __ptr_00 + 1;\n    bfd_set_section_flags(DAT_00163a50,DAT_001637d0,uVar8 & 1);\n    pbVar1 = (byte *)(*(long *)(DAT_001637d0 + 0xa8) + 8);\n    *pbVar1 = *pbVar1 | 2;\n    FUN_00125ca0("*ABS*",0);\n    FUN_00125ca0(&DAT_0013b3c0,0);\n    DAT_00163898 = FUN_00125ca0("*GAS `reg\' section*",0);\n    DAT_001637c0 = FUN_00125ca0("*GAS `expr\' section*",0);\n    FUN_00125d00(DAT_00163930,0);\n    FUN_00132b90();\n    FUN_00135be0();\n    if (uVar5 == 1) {\nLAB_00108d46:\n      FUN_001239f0(&DAT_00142ab6);\n    }\n    else {\n      __s = __ptr_00 + (ulong)(uVar5 - 2) + 2;\n      __ptr_00 = (long *)0x0;\n      do {\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      } while (plVar15 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }\n    FUN_0010c560(0xffffffff);\n    if (DAT_00163878 != 0 || _DAT_001638a8 != 0) {\n      uVar11 = FUN_00125ca0(".note.GNU-stack",0);\n      bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18);\n    }\n    FUN_0010e390();\n    FUN_00111a40();\n    DAT_00162ee0 = 0;\n    iVar6 = FUN_00116d00();\n    if (iVar6 != 0) {\n      FUN_0012e000();\n      __s = local_198;\n      uVar5 = FUN_0011bf10();\n      __ptr_00 = (long *)(ulong)uVar5;\n      uVar8 = FUN_0011bf20();\n      plVar15 = (long *)(ulong)uVar8;\n      pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5);\n      sprintf((char *)__s,pcVar12,(ulong)uVar5);\n      pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5);\n      sprintf((char *)&local_c8,pcVar12,(ulong)uVar8);\n      if ((DAT_001637f4 != 0) && (uVar5 != 0)) {\n        if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }\n      }\n      if ((int)plVar15 == 0) {\n        DAT_00162ee0 = 1;\n      }\n      else if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }\n    }\n    fflush(stderr);\n    FUN_00117f20(DAT_00162ed8,param_2);\n    FUN_001167a0();\n    iVar6 = FUN_0011bf20();\n    if (iVar6 != 0) break;\n    FUN_0010c930();\n    xexit(0);\nLAB_00108bff:\n    FUN_0013abc0(FUN_0010a8a0);\n  } while( true );\n  xexit(1);\n  iVar6 = strcasecmp(__s1,"warning");\n  if (iVar6 != 0) {\n    uVar11 = dcgettext(0,"Invalid --size-check= option: `%s\'",5);\n                    /* WARNING: Subroutine does not return */\n    FUN_0011c360(uVar11,__s1);\n  }\n  DAT_001638b0 = 1;\n  goto LAB_00107958;\n}" primitive_type (function_declarator "FUN_001077a0(uint param_1,long *param_2)" identifier (parameter_list "(uint param_1,long *param_2)" ( (parameter_declaration "uint param_1" type_identifier identifier) , (parameter_declaration "long *param_2" (sized_type_specifier "long" long) (pointer_declarator "*param_2" * identifier)) ))) (compound_statement "{\n  byte *pbVar1;\n  undefined1 (*pauVar2) [16];\n  size_t sVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  uint uVar8;\n  void *__ptr;\n  long *__ptr_00;\n  long *plVar9;\n  undefined8 uVar10;\n  undefined8 uVar11;\n  char *pcVar12;\n  long lVar13;\n  ulong uVar14;\n  long *plVar15;\n  undefined *puVar16;\n  undefined8 *puVar17;\n  undefined8 *puVar18;\n  long *__s;\n  char *__s1;\n  byte bVar19;\n  long *local_1a8;\n  uint local_1a0;\n  uint local_19c;\n  long local_198 [8];\n  stat local_158;\n  stat local_c8;\n  \n  bVar19 = 0;\n  local_1a8 = param_2;\n  local_19c = param_1;\n  _DAT_00162ec8 = FUN_0013a800();\n  FUN_0011c7a0();\n  setlocale(5,"");\n  setlocale(0,"");\n  bindtextdomain(&DAT_0013b28d,"/usr/share/locale");\n  textdomain(&DAT_0013b28d);\n  if (DAT_00162eac != 0) {\n    DAT_00162eb0 = 0x40;\n  }\n  DAT_00162ee8 = *local_1a8;\n  xmalloc_set_program_name();\n  FUN_0013a450(&local_19c,&local_1a8);\n  DAT_00163888 = "a.out";\n  hex_init();\n  bfd_init();\n  bfd_set_error_program_name(DAT_00162ee8);\n  __ptr = (void *)concat("-JLMRWZa::Dfg::I:o:vwX",PTR_s_O_g_G__0015a840,0);\n  __ptr_00 = (long *)xmalloc(DAT_0015a718 + 0x580);\n  puVar16 = PTR_s_alternate_0014e9c0;\n  __ptr_00[0xab] = DAT_0014ef18;\n  *__ptr_00 = (long)puVar16;\n  lVar13 = (long)__ptr_00 - (long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);\n  puVar17 = (undefined8 *)((long)&PTR_s_alternate_0014e9c0 - lVar13);\n  puVar18 = (undefined8 *)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);\n  for (uVar14 = (ulong)((int)lVar13 + 0x560U >> 3); sVar3 = DAT_0015a718, uVar14 != 0;\n      uVar14 = uVar14 - 1) {\n    *puVar18 = *puVar17;\n    puVar17 = puVar17 + (ulong)bVar19 * -2 + 1;\n    puVar18 = puVar18 + (ulong)bVar19 * -2 + 1;\n  }\n  memcpy(__ptr_00 + 0xac,&PTR_s_march_0015a740,DAT_0015a718);\n  uVar4 = local_19c;\n  __s = local_1a8;\n  pauVar2 = (undefined1 (*) [16])((long)__ptr_00 + sVar3 + 0x560);\n  *pauVar2 = (undefined1  [16])0x0;\n  plVar15 = (long *)&DAT_0013cb10;\n  pauVar2[1] = (undefined1  [16])0x0;\n  plVar9 = (long *)xmalloc((long)(int)(local_19c + 1) << 3);\n  local_1a0 = 1;\n  lVar13 = *__s;\n  plVar9[1] = 0;\n  *plVar9 = lVar13;\nLAB_00107958:\n  while( true ) {\n    uVar5 = getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8);\n    __s1 = (char *)(ulong)uVar5;\n    if (uVar5 == 0xffffffff) break;\n    if (uVar5 < 0xba) {\n                    /* WARNING: Could not recover jumptable at 0x00107989. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      (*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();\n      return;\n    }\n    iVar6 = FUN_001347a0(__s1,optarg);\n    if (iVar6 == 0) {\n      if (uVar5 != 0x76) {\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    /* WARNING: Subroutine does not return */\n        exit(1);\n      }\n      if (DAT_00162ebc == 0) {\n        FUN_0010a980();\n      }\n      _DAT_00162ea8 = 1;\n    }\n  }\n  free(__ptr);\n  free(__ptr_00);\n  local_19c = local_1a0;\n  local_1a8 = plVar9;\n  FUN_00134ab0();\n  if (((1 < (int)local_19c) && (iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0)) &&\n     (1 < (int)local_19c)) {\n    lVar13 = 8;\n    iVar6 = 1;\n    do {\n      iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8);\n      pcVar12 = DAT_00163888;\n      if (((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))) {\n        DAT_00163888 = (char *)0x0;\n        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);\n        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    /* WARNING: Subroutine does not return */\n        FUN_0011c360(uVar10,uVar11,pcVar12);\n      }\n      iVar6 = iVar6 + 1;\n      lVar13 = lVar13 + 8;\n    } while (iVar6 < (int)local_19c);\n  }\n  FUN_0012a770();\n  FUN_00115310();\n  FUN_00125b60();\n  FUN_0011da80();\n  FUN_00116770();\n  FUN_00112f40();\n  FUN_0013abc0(FUN_0010a950);\n  if (DAT_00163940 != '\0') goto LAB_00108bff;\n  do {\n    FUN_0011a8a0(DAT_00162ec0,DAT_00163950,0,FUN_0010a810);\n    FUN_0011c840(DAT_00163888);\n    if (DAT_00163a50 == 0) {\n                    /* WARNING: Subroutine does not return */\n      FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7);\n    }\n    FUN_0012a810();\n    FUN_0010e380();\n    FUN_00126440(".gasversion.",0x15aad0,0x5a3d,&DAT_001638c0);\n    __ptr_00 = local_1a8;\n    uVar5 = local_19c;\n    while (local_1a8 = __ptr_00, local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0) {\n      uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800);\n      FUN_00129e10(uVar11);\n      FUN_00126560(uVar11);\n      puVar17 = (undefined8 *)*DAT_00162ed0;\n      free(DAT_00162ed0);\n      DAT_00162ed0 = puVar17;\n      __ptr_00 = local_1a8;\n      uVar5 = local_19c;\n    }\n    __s = (long *)(ulong)uVar5;\n    DAT_001637cc = 0;\n    DAT_00163930 = FUN_00125ca0(".text",0);\n    DAT_00163868 = FUN_00125ca0(".data",0);\n    DAT_001637d0 = FUN_00125ca0(&DAT_0013b3b5,0);\n    uVar8 = *(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163930,uVar8 & 0x1f);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163868,uVar8 & 0x27);\n    plVar15 = __ptr_00 + 1;\n    bfd_set_section_flags(DAT_00163a50,DAT_001637d0,uVar8 & 1);\n    pbVar1 = (byte *)(*(long *)(DAT_001637d0 + 0xa8) + 8);\n    *pbVar1 = *pbVar1 | 2;\n    FUN_00125ca0("*ABS*",0);\n    FUN_00125ca0(&DAT_0013b3c0,0);\n    DAT_00163898 = FUN_00125ca0("*GAS `reg\' section*",0);\n    DAT_001637c0 = FUN_00125ca0("*GAS `expr\' section*",0);\n    FUN_00125d00(DAT_00163930,0);\n    FUN_00132b90();\n    FUN_00135be0();\n    if (uVar5 == 1) {\nLAB_00108d46:\n      FUN_001239f0(&DAT_00142ab6);\n    }\n    else {\n      __s = __ptr_00 + (ulong)(uVar5 - 2) + 2;\n      __ptr_00 = (long *)0x0;\n      do {\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      } while (plVar15 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }\n    FUN_0010c560(0xffffffff);\n    if (DAT_00163878 != 0 || _DAT_001638a8 != 0) {\n      uVar11 = FUN_00125ca0(".note.GNU-stack",0);\n      bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18);\n    }\n    FUN_0010e390();\n    FUN_00111a40();\n    DAT_00162ee0 = 0;\n    iVar6 = FUN_00116d00();\n    if (iVar6 != 0) {\n      FUN_0012e000();\n      __s = local_198;\n      uVar5 = FUN_0011bf10();\n      __ptr_00 = (long *)(ulong)uVar5;\n      uVar8 = FUN_0011bf20();\n      plVar15 = (long *)(ulong)uVar8;\n      pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5);\n      sprintf((char *)__s,pcVar12,(ulong)uVar5);\n      pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5);\n      sprintf((char *)&local_c8,pcVar12,(ulong)uVar8);\n      if ((DAT_001637f4 != 0) && (uVar5 != 0)) {\n        if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }\n      }\n      if ((int)plVar15 == 0) {\n        DAT_00162ee0 = 1;\n      }\n      else if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }\n    }\n    fflush(stderr);\n    FUN_00117f20(DAT_00162ed8,param_2);\n    FUN_001167a0();\n    iVar6 = FUN_0011bf20();\n    if (iVar6 != 0) break;\n    FUN_0010c930();\n    xexit(0);\nLAB_00108bff:\n    FUN_0013abc0(FUN_0010a8a0);\n  } while( true );\n  xexit(1);\n  iVar6 = strcasecmp(__s1,"warning");\n  if (iVar6 != 0) {\n    uVar11 = dcgettext(0,"Invalid --size-check= option: `%s\'",5);\n                    /* WARNING: Subroutine does not return */\n    FUN_0011c360(uVar11,__s1);\n  }\n  DAT_001638b0 = 1;\n  goto LAB_00107958;\n}" { (declaration "byte *pbVar1;" type_identifier (pointer_declarator "*pbVar1" * identifier) ;) (expression_statement "undefined1 (*pauVar2) [16];" (subscript_expression "undefined1 (*pauVar2) [16]" (call_expression "undefined1 (*pauVar2)" identifier (argument_list "(*pauVar2)" ( (pointer_expression "*pauVar2" * identifier) ))) [ number_literal ]) ;) (declaration "size_t sVar3;" primitive_type identifier ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "uint uVar8;" type_identifier identifier ;) (declaration "void *__ptr;" primitive_type (pointer_declarator "*__ptr" * identifier) ;) (declaration "long *__ptr_00;" (sized_type_specifier "long" long) (pointer_declarator "*__ptr_00" * identifier) ;) (declaration "long *plVar9;" (sized_type_specifier "long" long) (pointer_declarator "*plVar9" * identifier) ;) (declaration "undefined8 uVar10;" type_identifier identifier ;) (declaration "undefined8 uVar11;" type_identifier identifier ;) (declaration "char *pcVar12;" primitive_type (pointer_declarator "*pcVar12" * identifier) ;) (declaration "long lVar13;" (sized_type_specifier "long" long) identifier ;) (declaration "ulong uVar14;" type_identifier identifier ;) (declaration "long *plVar15;" (sized_type_specifier "long" long) (pointer_declarator "*plVar15" * identifier) ;) (declaration "undefined *puVar16;" type_identifier (pointer_declarator "*puVar16" * identifier) ;) (declaration "undefined8 *puVar17;" type_identifier (pointer_declarator "*puVar17" * identifier) ;) (declaration "undefined8 *puVar18;" type_identifier (pointer_declarator "*puVar18" * identifier) ;) (declaration "long *__s;" (sized_type_specifier "long" long) (pointer_declarator "*__s" * identifier) ;) (declaration "char *__s1;" primitive_type (pointer_declarator "*__s1" * identifier) ;) (declaration "byte bVar19;" type_identifier identifier ;) (declaration "long *local_1a8;" (sized_type_specifier "long" long) (pointer_declarator "*local_1a8" * identifier) ;) (declaration "uint local_1a0;" type_identifier identifier ;) (declaration "uint local_19c;" type_identifier identifier ;) (declaration "long local_198 [8];" (sized_type_specifier "long" long) (array_declarator "local_198 [8]" identifier [ number_literal ]) ;) (declaration "stat local_158;" type_identifier identifier ;) (declaration "stat local_c8;" type_identifier identifier ;) (expression_statement "bVar19 = 0;" (assignment_expression "bVar19 = 0" identifier = number_literal) ;) (expression_statement "local_1a8 = param_2;" (assignment_expression "local_1a8 = param_2" identifier = identifier) ;) (expression_statement "local_19c = param_1;" (assignment_expression "local_19c = param_1" identifier = identifier) ;) (expression_statement "_DAT_00162ec8 = FUN_0013a800();" (assignment_expression "_DAT_00162ec8 = FUN_0013a800()" identifier = (call_expression "FUN_0013a800()" identifier (argument_list "()" ( )))) ;) (expression_statement "FUN_0011c7a0();" (call_expression "FUN_0011c7a0()" identifier (argument_list "()" ( ))) ;) (expression_statement "setlocale(5,"");" (call_expression "setlocale(5,"")" identifier (argument_list "(5,"")" ( number_literal , (string_literal """" " ") ))) ;) (expression_statement "setlocale(0,"");" (call_expression "setlocale(0,"")" identifier (argument_list "(0,"")" ( number_literal , (string_literal """" " ") ))) ;) (expression_statement "bindtextdomain(&DAT_0013b28d,"/usr/share/locale");" (call_expression "bindtextdomain(&DAT_0013b28d,"/usr/share/locale")" identifier (argument_list "(&DAT_0013b28d,"/usr/share/locale")" ( (pointer_expression "&DAT_0013b28d" & identifier) , (string_literal ""/usr/share/locale"" " string_content ") ))) ;) (expression_statement "textdomain(&DAT_0013b28d);" (call_expression "textdomain(&DAT_0013b28d)" identifier (argument_list "(&DAT_0013b28d)" ( (pointer_expression "&DAT_0013b28d" & identifier) ))) ;) (if_statement "if (DAT_00162eac != 0) {\n    DAT_00162eb0 = 0x40;\n  }" if (parenthesized_expression "(DAT_00162eac != 0)" ( (binary_expression "DAT_00162eac != 0" identifier != number_literal) )) (compound_statement "{\n    DAT_00162eb0 = 0x40;\n  }" { (expression_statement "DAT_00162eb0 = 0x40;" (assignment_expression "DAT_00162eb0 = 0x40" identifier = number_literal) ;) })) (expression_statement "DAT_00162ee8 = *local_1a8;" (assignment_expression "DAT_00162ee8 = *local_1a8" identifier = (pointer_expression "*local_1a8" * identifier)) ;) (expression_statement "xmalloc_set_program_name();" (call_expression "xmalloc_set_program_name()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_0013a450(&local_19c,&local_1a8);" (call_expression "FUN_0013a450(&local_19c,&local_1a8)" identifier (argument_list "(&local_19c,&local_1a8)" ( (pointer_expression "&local_19c" & identifier) , (pointer_expression "&local_1a8" & identifier) ))) ;) (expression_statement "DAT_00163888 = "a.out";" (assignment_expression "DAT_00163888 = "a.out"" identifier = (string_literal ""a.out"" " string_content ")) ;) (expression_statement "hex_init();" (call_expression "hex_init()" identifier (argument_list "()" ( ))) ;) (expression_statement "bfd_init();" (call_expression "bfd_init()" identifier (argument_list "()" ( ))) ;) (expression_statement "bfd_set_error_program_name(DAT_00162ee8);" (call_expression "bfd_set_error_program_name(DAT_00162ee8)" identifier (argument_list "(DAT_00162ee8)" ( identifier ))) ;) (expression_statement "__ptr = (void *)concat("-JLMRWZa::Dfg::I:o:vwX",PTR_s_O_g_G__0015a840,0);" (assignment_expression "__ptr = (void *)concat("-JLMRWZa::Dfg::I:o:vwX",PTR_s_O_g_G__0015a840,0)" identifier = (cast_expression "(void *)concat("-JLMRWZa::Dfg::I:o:vwX",PTR_s_O_g_G__0015a840,0)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "concat("-JLMRWZa::Dfg::I:o:vwX",PTR_s_O_g_G__0015a840,0)" identifier (argument_list "("-JLMRWZa::Dfg::I:o:vwX",PTR_s_O_g_G__0015a840,0)" ( (string_literal ""-JLMRWZa::Dfg::I:o:vwX"" " string_content ") , identifier , number_literal ))))) ;) (expression_statement "__ptr_00 = (long *)xmalloc(DAT_0015a718 + 0x580);" (assignment_expression "__ptr_00 = (long *)xmalloc(DAT_0015a718 + 0x580)" identifier = (cast_expression "(long *)xmalloc(DAT_0015a718 + 0x580)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(DAT_0015a718 + 0x580)" identifier (argument_list "(DAT_0015a718 + 0x580)" ( (binary_expression "DAT_0015a718 + 0x580" identifier + number_literal) ))))) ;) (expression_statement "puVar16 = PTR_s_alternate_0014e9c0;" (assignment_expression "puVar16 = PTR_s_alternate_0014e9c0" identifier = identifier) ;) (expression_statement "__ptr_00[0xab] = DAT_0014ef18;" (assignment_expression "__ptr_00[0xab] = DAT_0014ef18" (subscript_expression "__ptr_00[0xab]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*__ptr_00 = (long)puVar16;" (assignment_expression "*__ptr_00 = (long)puVar16" (pointer_expression "*__ptr_00" * identifier) = (cast_expression "(long)puVar16" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ;) (expression_statement "lVar13 = (long)__ptr_00 - (long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);" (assignment_expression "lVar13 = (long)__ptr_00 - (long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" identifier = (binary_expression "(long)__ptr_00 - (long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" (cast_expression "(long)__ptr_00" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (parenthesized_expression "((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" ( (binary_expression "(ulong)(__ptr_00 + 1) & 0xfffffffffffffff8" (call_expression "(ulong)(__ptr_00 + 1)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(__ptr_00 + 1)" ( (binary_expression "__ptr_00 + 1" identifier + number_literal) ))) & number_literal) ))))) ;) (expression_statement "puVar17 = (undefined8 *)((long)&PTR_s_alternate_0014e9c0 - lVar13);" (assignment_expression "puVar17 = (undefined8 *)((long)&PTR_s_alternate_0014e9c0 - lVar13)" identifier = (cast_expression "(undefined8 *)((long)&PTR_s_alternate_0014e9c0 - lVar13)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&PTR_s_alternate_0014e9c0 - lVar13)" ( (binary_expression "(long)&PTR_s_alternate_0014e9c0 - lVar13" (cast_expression "(long)&PTR_s_alternate_0014e9c0" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&PTR_s_alternate_0014e9c0" & identifier)) - identifier) )))) ;) (expression_statement "puVar18 = (undefined8 *)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);" (assignment_expression "puVar18 = (undefined8 *)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" identifier = (cast_expression "(undefined8 *)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" ( (binary_expression "(ulong)(__ptr_00 + 1) & 0xfffffffffffffff8" (call_expression "(ulong)(__ptr_00 + 1)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(__ptr_00 + 1)" ( (binary_expression "__ptr_00 + 1" identifier + number_literal) ))) & number_literal) )))) ;) (for_statement "for (uVar14 = (ulong)((int)lVar13 + 0x560U >> 3); sVar3 = DAT_0015a718, uVar14 != 0;\n      uVar14 = uVar14 - 1) {\n    *puVar18 = *puVar17;\n    puVar17 = puVar17 + (ulong)bVar19 * -2 + 1;\n    puVar18 = puVar18 + (ulong)bVar19 * -2 + 1;\n  }" for ( (assignment_expression "uVar14 = (ulong)((int)lVar13 + 0x560U >> 3)" identifier = (call_expression "(ulong)((int)lVar13 + 0x560U >> 3)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "((int)lVar13 + 0x560U >> 3)" ( (binary_expression "(int)lVar13 + 0x560U >> 3" (binary_expression "(int)lVar13 + 0x560U" (cast_expression "(int)lVar13" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) >> number_literal) )))) ; (comma_expression "sVar3 = DAT_0015a718, uVar14 != 0" (assignment_expression "sVar3 = DAT_0015a718" identifier = identifier) , (binary_expression "uVar14 != 0" identifier != number_literal)) ; (assignment_expression "uVar14 = uVar14 - 1" identifier = (binary_expression "uVar14 - 1" identifier - number_literal)) ) (compound_statement "{\n    *puVar18 = *puVar17;\n    puVar17 = puVar17 + (ulong)bVar19 * -2 + 1;\n    puVar18 = puVar18 + (ulong)bVar19 * -2 + 1;\n  }" { (expression_statement "*puVar18 = *puVar17;" (assignment_expression "*puVar18 = *puVar17" (pointer_expression "*puVar18" * identifier) = (pointer_expression "*puVar17" * identifier)) ;) (expression_statement "puVar17 = puVar17 + (ulong)bVar19 * -2 + 1;" (assignment_expression "puVar17 = puVar17 + (ulong)bVar19 * -2 + 1" identifier = (binary_expression "puVar17 + (ulong)bVar19 * -2 + 1" (binary_expression "puVar17 + (ulong)bVar19 * -2" identifier + (binary_expression "(ulong)bVar19 * -2" (cast_expression "(ulong)bVar19" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "puVar18 = puVar18 + (ulong)bVar19 * -2 + 1;" (assignment_expression "puVar18 = puVar18 + (ulong)bVar19 * -2 + 1" identifier = (binary_expression "puVar18 + (ulong)bVar19 * -2 + 1" (binary_expression "puVar18 + (ulong)bVar19 * -2" identifier + (binary_expression "(ulong)bVar19 * -2" (cast_expression "(ulong)bVar19" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) })) (expression_statement "memcpy(__ptr_00 + 0xac,&PTR_s_march_0015a740,DAT_0015a718);" (call_expression "memcpy(__ptr_00 + 0xac,&PTR_s_march_0015a740,DAT_0015a718)" identifier (argument_list "(__ptr_00 + 0xac,&PTR_s_march_0015a740,DAT_0015a718)" ( (binary_expression "__ptr_00 + 0xac" identifier + number_literal) , (pointer_expression "&PTR_s_march_0015a740" & identifier) , identifier ))) ;) (expression_statement "uVar4 = local_19c;" (assignment_expression "uVar4 = local_19c" identifier = identifier) ;) (expression_statement "__s = local_1a8;" (assignment_expression "__s = local_1a8" identifier = identifier) ;) (expression_statement "pauVar2 = (undefined1 (*) [16])((long)__ptr_00 + sVar3 + 0x560);" (assignment_expression "pauVar2 = (undefined1 (*) [16])((long)__ptr_00 + sVar3 + 0x560)" identifier = (cast_expression "(undefined1 (*) [16])((long)__ptr_00 + sVar3 + 0x560)" ( (type_descriptor "undefined1 (*) [16]" type_identifier (abstract_array_declarator "(*) [16]" (abstract_parenthesized_declarator "(*)" ( (abstract_pointer_declarator "*" *) )) [ number_literal ])) ) (parenthesized_expression "((long)__ptr_00 + sVar3 + 0x560)" ( (binary_expression "(long)__ptr_00 + sVar3 + 0x560" (binary_expression "(long)__ptr_00 + sVar3" (cast_expression "(long)__ptr_00" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) + number_literal) )))) ;) (expression_statement "*pauVar2 = (undefined1  [16])0x0;" (assignment_expression "*pauVar2 = (undefined1  [16])0x0" (pointer_expression "*pauVar2" * identifier) = (cast_expression "(undefined1  [16])0x0" ( (type_descriptor "undefined1  [16]" type_identifier (abstract_array_declarator "[16]" [ number_literal ])) ) number_literal)) ;) (expression_statement "plVar15 = (long *)&DAT_0013cb10;" (assignment_expression "plVar15 = (long *)&DAT_0013cb10" identifier = (cast_expression "(long *)&DAT_0013cb10" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_0013cb10" & identifier))) ;) (expression_statement "pauVar2[1] = (undefined1  [16])0x0;" (assignment_expression "pauVar2[1] = (undefined1  [16])0x0" (subscript_expression "pauVar2[1]" identifier [ number_literal ]) = (cast_expression "(undefined1  [16])0x0" ( (type_descriptor "undefined1  [16]" type_identifier (abstract_array_declarator "[16]" [ number_literal ])) ) number_literal)) ;) (expression_statement "plVar9 = (long *)xmalloc((long)(int)(local_19c + 1) << 3);" (assignment_expression "plVar9 = (long *)xmalloc((long)(int)(local_19c + 1) << 3)" identifier = (cast_expression "(long *)xmalloc((long)(int)(local_19c + 1) << 3)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc((long)(int)(local_19c + 1) << 3)" identifier (argument_list "((long)(int)(local_19c + 1) << 3)" ( (binary_expression "(long)(int)(local_19c + 1) << 3" (cast_expression "(long)(int)(local_19c + 1)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)(local_19c + 1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(local_19c + 1)" ( (binary_expression "local_19c + 1" identifier + number_literal) )))) << number_literal) ))))) ;) (expression_statement "local_1a0 = 1;" (assignment_expression "local_1a0 = 1" identifier = number_literal) ;) (expression_statement "lVar13 = *__s;" (assignment_expression "lVar13 = *__s" identifier = (pointer_expression "*__s" * identifier)) ;) (expression_statement "plVar9[1] = 0;" (assignment_expression "plVar9[1] = 0" (subscript_expression "plVar9[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "*plVar9 = lVar13;" (assignment_expression "*plVar9 = lVar13" (pointer_expression "*plVar9" * identifier) = identifier) ;) (labeled_statement "LAB_00107958:\n  while( true ) {\n    uVar5 = getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8);\n    __s1 = (char *)(ulong)uVar5;\n    if (uVar5 == 0xffffffff) break;\n    if (uVar5 < 0xba) {\n                    /* WARNING: Could not recover jumptable at 0x00107989. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      (*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();\n      return;\n    }\n    iVar6 = FUN_001347a0(__s1,optarg);\n    if (iVar6 == 0) {\n      if (uVar5 != 0x76) {\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    /* WARNING: Subroutine does not return */\n        exit(1);\n      }\n      if (DAT_00162ebc == 0) {\n        FUN_0010a980();\n      }\n      _DAT_00162ea8 = 1;\n    }\n  }" statement_identifier : (while_statement "while( true ) {\n    uVar5 = getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8);\n    __s1 = (char *)(ulong)uVar5;\n    if (uVar5 == 0xffffffff) break;\n    if (uVar5 < 0xba) {\n                    /* WARNING: Could not recover jumptable at 0x00107989. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      (*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();\n      return;\n    }\n    iVar6 = FUN_001347a0(__s1,optarg);\n    if (iVar6 == 0) {\n      if (uVar5 != 0x76) {\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    /* WARNING: Subroutine does not return */\n        exit(1);\n      }\n      if (DAT_00162ebc == 0) {\n        FUN_0010a980();\n      }\n      _DAT_00162ea8 = 1;\n    }\n  }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n    uVar5 = getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8);\n    __s1 = (char *)(ulong)uVar5;\n    if (uVar5 == 0xffffffff) break;\n    if (uVar5 < 0xba) {\n                    /* WARNING: Could not recover jumptable at 0x00107989. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      (*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();\n      return;\n    }\n    iVar6 = FUN_001347a0(__s1,optarg);\n    if (iVar6 == 0) {\n      if (uVar5 != 0x76) {\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    /* WARNING: Subroutine does not return */\n        exit(1);\n      }\n      if (DAT_00162ebc == 0) {\n        FUN_0010a980();\n      }\n      _DAT_00162ea8 = 1;\n    }\n  }" { (expression_statement "uVar5 = getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8);" (assignment_expression "uVar5 = getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8)" identifier = (call_expression "getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8)" identifier (argument_list "(uVar4,__s,__ptr,__ptr_00,&local_c8)" ( identifier , identifier , identifier , identifier , (pointer_expression "&local_c8" & identifier) )))) ;) (expression_statement "__s1 = (char *)(ulong)uVar5;" (assignment_expression "__s1 = (char *)(ulong)uVar5" identifier = (cast_expression "(char *)(ulong)uVar5" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (if_statement "if (uVar5 == 0xffffffff) break;" if (parenthesized_expression "(uVar5 == 0xffffffff)" ( (binary_expression "uVar5 == 0xffffffff" identifier == number_literal) )) (break_statement "break;" break ;)) (if_statement "if (uVar5 < 0xba) {\n                    /* WARNING: Could not recover jumptable at 0x00107989. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      (*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();\n      return;\n    }" if (parenthesized_expression "(uVar5 < 0xba)" ( (binary_expression "uVar5 < 0xba" identifier < number_literal) )) (compound_statement "{\n                    /* WARNING: Could not recover jumptable at 0x00107989. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      (*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();\n      return;\n    }" { comment comment (expression_statement "(*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();" (call_expression "(*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))()" (parenthesized_expression "(*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))" ( (pointer_expression "*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15)" * (cast_expression "(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15)" ( (binary_expression "(long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15" (cast_expression "(long)*(int *)((long)plVar15 + (ulong)uVar5 * 4)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "*(int *)((long)plVar15 + (ulong)uVar5 * 4)" * (cast_expression "(int *)((long)plVar15 + (ulong)uVar5 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)plVar15 + (ulong)uVar5 * 4)" ( (binary_expression "(long)plVar15 + (ulong)uVar5 * 4" (cast_expression "(long)plVar15" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (binary_expression "(ulong)uVar5 * 4" (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) ))))) + (cast_expression "(long)plVar15" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) )) (argument_list "()" ( ))) ;) (return_statement "return;" return ;) })) (expression_statement "iVar6 = FUN_001347a0(__s1,optarg);" (assignment_expression "iVar6 = FUN_001347a0(__s1,optarg)" identifier = (call_expression "FUN_001347a0(__s1,optarg)" identifier (argument_list "(__s1,optarg)" ( identifier , identifier )))) ;) (if_statement "if (iVar6 == 0) {\n      if (uVar5 != 0x76) {\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    /* WARNING: Subroutine does not return */\n        exit(1);\n      }\n      if (DAT_00162ebc == 0) {\n        FUN_0010a980();\n      }\n      _DAT_00162ea8 = 1;\n    }" if (parenthesized_expression "(iVar6 == 0)" ( (binary_expression "iVar6 == 0" identifier == number_literal) )) (compound_statement "{\n      if (uVar5 != 0x76) {\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    /* WARNING: Subroutine does not return */\n        exit(1);\n      }\n      if (DAT_00162ebc == 0) {\n        FUN_0010a980();\n      }\n      _DAT_00162ea8 = 1;\n    }" { (if_statement "if (uVar5 != 0x76) {\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    /* WARNING: Subroutine does not return */\n        exit(1);\n      }" if (parenthesized_expression "(uVar5 != 0x76)" ( (binary_expression "uVar5 != 0x76" identifier != number_literal) )) (compound_statement "{\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    /* WARNING: Subroutine does not return */\n        exit(1);\n      }" { (expression_statement "puVar16 = optarg;" (assignment_expression "puVar16 = optarg" identifier = identifier) ;) (if_statement "if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }" if (parenthesized_expression "(optarg == (undefined *)0x0)" ( (binary_expression "optarg == (undefined *)0x0" identifier == (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          puVar16 = &DAT_00142ab6;\n        }" { (expression_statement "puVar16 = &DAT_00142ab6;" (assignment_expression "puVar16 = &DAT_00142ab6" identifier = (pointer_expression "&DAT_00142ab6" & identifier)) ;) })) (expression_statement "uVar11 = dcgettext(0,"unrecognized option -%c%s",5);" (assignment_expression "uVar11 = dcgettext(0,"unrecognized option -%c%s",5)" identifier = (call_expression "dcgettext(0,"unrecognized option -%c%s",5)" identifier (argument_list "(0,"unrecognized option -%c%s",5)" ( number_literal , (string_literal ""unrecognized option -%c%s"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_0011c1c0(uVar11,__s1,puVar16);" (call_expression "FUN_0011c1c0(uVar11,__s1,puVar16)" identifier (argument_list "(uVar11,__s1,puVar16)" ( identifier , identifier , identifier ))) ;) comment (expression_statement "exit(1);" (call_expression "exit(1)" identifier (argument_list "(1)" ( number_literal ))) ;) })) (if_statement "if (DAT_00162ebc == 0) {\n        FUN_0010a980();\n      }" if (parenthesized_expression "(DAT_00162ebc == 0)" ( (binary_expression "DAT_00162ebc == 0" identifier == number_literal) )) (compound_statement "{\n        FUN_0010a980();\n      }" { (expression_statement "FUN_0010a980();" (call_expression "FUN_0010a980()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "_DAT_00162ea8 = 1;" (assignment_expression "_DAT_00162ea8 = 1" identifier = number_literal) ;) })) }))) (expression_statement "free(__ptr);" (call_expression "free(__ptr)" identifier (argument_list "(__ptr)" ( identifier ))) ;) (expression_statement "free(__ptr_00);" (call_expression "free(__ptr_00)" identifier (argument_list "(__ptr_00)" ( identifier ))) ;) (expression_statement "local_19c = local_1a0;" (assignment_expression "local_19c = local_1a0" identifier = identifier) ;) (expression_statement "local_1a8 = plVar9;" (assignment_expression "local_1a8 = plVar9" identifier = identifier) ;) (expression_statement "FUN_00134ab0();" (call_expression "FUN_00134ab0()" identifier (argument_list "()" ( ))) ;) (if_statement "if (((1 < (int)local_19c) && (iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0)) &&\n     (1 < (int)local_19c)) {\n    lVar13 = 8;\n    iVar6 = 1;\n    do {\n      iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8);\n      pcVar12 = DAT_00163888;\n      if (((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))) {\n        DAT_00163888 = (char *)0x0;\n        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);\n        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    /* WARNING: Subroutine does not return */\n        FUN_0011c360(uVar10,uVar11,pcVar12);\n      }\n      iVar6 = iVar6 + 1;\n      lVar13 = lVar13 + 8;\n    } while (iVar6 < (int)local_19c);\n  }" if (parenthesized_expression "(((1 < (int)local_19c) && (iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0)) &&\n     (1 < (int)local_19c))" ( (binary_expression "((1 < (int)local_19c) && (iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0)) &&\n     (1 < (int)local_19c)" (parenthesized_expression "((1 < (int)local_19c) && (iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0))" ( (binary_expression "(1 < (int)local_19c) && (iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0)" (parenthesized_expression "(1 < (int)local_19c)" ( (binary_expression "1 < (int)local_19c" number_literal < (cast_expression "(int)local_19c" ( (type_descriptor "int" primitive_type) ) identifier)) )) && (parenthesized_expression "(iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0)" ( (comma_expression "iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0" (assignment_expression "iVar6 = __xstat(1,DAT_00163888,&local_158)" identifier = (call_expression "__xstat(1,DAT_00163888,&local_158)" identifier (argument_list "(1,DAT_00163888,&local_158)" ( number_literal , identifier , (pointer_expression "&local_158" & identifier) )))) , (binary_expression "iVar6 == 0" identifier == number_literal)) ))) )) && (parenthesized_expression "(1 < (int)local_19c)" ( (binary_expression "1 < (int)local_19c" number_literal < (cast_expression "(int)local_19c" ( (type_descriptor "int" primitive_type) ) identifier)) ))) )) (compound_statement "{\n    lVar13 = 8;\n    iVar6 = 1;\n    do {\n      iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8);\n      pcVar12 = DAT_00163888;\n      if (((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))) {\n        DAT_00163888 = (char *)0x0;\n        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);\n        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    /* WARNING: Subroutine does not return */\n        FUN_0011c360(uVar10,uVar11,pcVar12);\n      }\n      iVar6 = iVar6 + 1;\n      lVar13 = lVar13 + 8;\n    } while (iVar6 < (int)local_19c);\n  }" { (expression_statement "lVar13 = 8;" (assignment_expression "lVar13 = 8" identifier = number_literal) ;) (expression_statement "iVar6 = 1;" (assignment_expression "iVar6 = 1" identifier = number_literal) ;) (do_statement "do {\n      iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8);\n      pcVar12 = DAT_00163888;\n      if (((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))) {\n        DAT_00163888 = (char *)0x0;\n        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);\n        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    /* WARNING: Subroutine does not return */\n        FUN_0011c360(uVar10,uVar11,pcVar12);\n      }\n      iVar6 = iVar6 + 1;\n      lVar13 = lVar13 + 8;\n    } while (iVar6 < (int)local_19c);" do (compound_statement "{\n      iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8);\n      pcVar12 = DAT_00163888;\n      if (((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))) {\n        DAT_00163888 = (char *)0x0;\n        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);\n        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    /* WARNING: Subroutine does not return */\n        FUN_0011c360(uVar10,uVar11,pcVar12);\n      }\n      iVar6 = iVar6 + 1;\n      lVar13 = lVar13 + 8;\n    }" { (expression_statement "iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8);" (assignment_expression "iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8)" identifier = (call_expression "__xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8)" identifier (argument_list "(1,*(char **)((long)local_1a8 + lVar13),&local_c8)" ( number_literal , (pointer_expression "*(char **)((long)local_1a8 + lVar13)" * (cast_expression "(char **)((long)local_1a8 + lVar13)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((long)local_1a8 + lVar13)" ( (binary_expression "(long)local_1a8 + lVar13" (cast_expression "(long)local_1a8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) )))) , (pointer_expression "&local_c8" & identifier) )))) ;) (expression_statement "pcVar12 = DAT_00163888;" (assignment_expression "pcVar12 = DAT_00163888" identifier = identifier) ;) (if_statement "if (((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))) {\n        DAT_00163888 = (char *)0x0;\n        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);\n        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    /* WARNING: Subroutine does not return */\n        FUN_0011c360(uVar10,uVar11,pcVar12);\n      }" if (parenthesized_expression "(((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev))))" ( (binary_expression "((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))" (parenthesized_expression "((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino))" ( (binary_expression "(iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)" (parenthesized_expression "(iVar7 == 0)" ( (binary_expression "iVar7 == 0" identifier == number_literal) )) && (parenthesized_expression "(local_158.st_ino == local_c8.st_ino)" ( (binary_expression "local_158.st_ino == local_c8.st_ino" (field_expression "local_158.st_ino" identifier . field_identifier) == (field_expression "local_c8.st_ino" identifier . field_identifier)) ))) )) && (parenthesized_expression "((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))" ( (parenthesized_expression "(local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev))" ( (binary_expression "local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)" (binary_expression "local_c8.st_ino != 0" (field_expression "local_c8.st_ino" identifier . field_identifier) != number_literal) && (parenthesized_expression "(local_c8.st_dev == local_158.st_dev)" ( (binary_expression "local_c8.st_dev == local_158.st_dev" (field_expression "local_c8.st_dev" identifier . field_identifier) == (field_expression "local_158.st_dev" identifier . field_identifier)) ))) )) ))) )) (compound_statement "{\n        DAT_00163888 = (char *)0x0;\n        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);\n        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    /* WARNING: Subroutine does not return */\n        FUN_0011c360(uVar10,uVar11,pcVar12);\n      }" { (expression_statement "DAT_00163888 = (char *)0x0;" (assignment_expression "DAT_00163888 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);" (assignment_expression "uVar11 = *(undefined8 *)((long)local_1a8 + lVar13)" identifier = (pointer_expression "*(undefined8 *)((long)local_1a8 + lVar13)" * (cast_expression "(undefined8 *)((long)local_1a8 + lVar13)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)local_1a8 + lVar13)" ( (binary_expression "(long)local_1a8 + lVar13" (cast_expression "(long)local_1a8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) ))))) ;) (expression_statement "uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);" (assignment_expression "uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5)" identifier = (call_expression "dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5)" identifier (argument_list "(0,"The input \'%s\' and output \'%s\' files are the same",5)" ( number_literal , (string_literal ""The input \'%s\' and output \'%s\' files are the same"" " string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content ") , number_literal )))) ;) comment (expression_statement "FUN_0011c360(uVar10,uVar11,pcVar12);" (call_expression "FUN_0011c360(uVar10,uVar11,pcVar12)" identifier (argument_list "(uVar10,uVar11,pcVar12)" ( identifier , identifier , identifier ))) ;) })) (expression_statement "iVar6 = iVar6 + 1;" (assignment_expression "iVar6 = iVar6 + 1" identifier = (binary_expression "iVar6 + 1" identifier + number_literal)) ;) (expression_statement "lVar13 = lVar13 + 8;" (assignment_expression "lVar13 = lVar13 + 8" identifier = (binary_expression "lVar13 + 8" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar6 < (int)local_19c)" ( (binary_expression "iVar6 < (int)local_19c" identifier < (cast_expression "(int)local_19c" ( (type_descriptor "int" primitive_type) ) identifier)) )) ;) })) (expression_statement "FUN_0012a770();" (call_expression "FUN_0012a770()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_00115310();" (call_expression "FUN_00115310()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_00125b60();" (call_expression "FUN_00125b60()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_0011da80();" (call_expression "FUN_0011da80()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_00116770();" (call_expression "FUN_00116770()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_00112f40();" (call_expression "FUN_00112f40()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_0013abc0(FUN_0010a950);" (call_expression "FUN_0013abc0(FUN_0010a950)" identifier (argument_list "(FUN_0010a950)" ( identifier ))) ;) (if_statement "if (DAT_00163940 != '\0') goto LAB_00108bff;" if (parenthesized_expression "(DAT_00163940 != '\0')" ( (binary_expression "DAT_00163940 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00108bff;" goto statement_identifier ;)) (do_statement "do {\n    FUN_0011a8a0(DAT_00162ec0,DAT_00163950,0,FUN_0010a810);\n    FUN_0011c840(DAT_00163888);\n    if (DAT_00163a50 == 0) {\n                    /* WARNING: Subroutine does not return */\n      FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7);\n    }\n    FUN_0012a810();\n    FUN_0010e380();\n    FUN_00126440(".gasversion.",0x15aad0,0x5a3d,&DAT_001638c0);\n    __ptr_00 = local_1a8;\n    uVar5 = local_19c;\n    while (local_1a8 = __ptr_00, local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0) {\n      uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800);\n      FUN_00129e10(uVar11);\n      FUN_00126560(uVar11);\n      puVar17 = (undefined8 *)*DAT_00162ed0;\n      free(DAT_00162ed0);\n      DAT_00162ed0 = puVar17;\n      __ptr_00 = local_1a8;\n      uVar5 = local_19c;\n    }\n    __s = (long *)(ulong)uVar5;\n    DAT_001637cc = 0;\n    DAT_00163930 = FUN_00125ca0(".text",0);\n    DAT_00163868 = FUN_00125ca0(".data",0);\n    DAT_001637d0 = FUN_00125ca0(&DAT_0013b3b5,0);\n    uVar8 = *(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163930,uVar8 & 0x1f);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163868,uVar8 & 0x27);\n    plVar15 = __ptr_00 + 1;\n    bfd_set_section_flags(DAT_00163a50,DAT_001637d0,uVar8 & 1);\n    pbVar1 = (byte *)(*(long *)(DAT_001637d0 + 0xa8) + 8);\n    *pbVar1 = *pbVar1 | 2;\n    FUN_00125ca0("*ABS*",0);\n    FUN_00125ca0(&DAT_0013b3c0,0);\n    DAT_00163898 = FUN_00125ca0("*GAS `reg\' section*",0);\n    DAT_001637c0 = FUN_00125ca0("*GAS `expr\' section*",0);\n    FUN_00125d00(DAT_00163930,0);\n    FUN_00132b90();\n    FUN_00135be0();\n    if (uVar5 == 1) {\nLAB_00108d46:\n      FUN_001239f0(&DAT_00142ab6);\n    }\n    else {\n      __s = __ptr_00 + (ulong)(uVar5 - 2) + 2;\n      __ptr_00 = (long *)0x0;\n      do {\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      } while (plVar15 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }\n    FUN_0010c560(0xffffffff);\n    if (DAT_00163878 != 0 || _DAT_001638a8 != 0) {\n      uVar11 = FUN_00125ca0(".note.GNU-stack",0);\n      bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18);\n    }\n    FUN_0010e390();\n    FUN_00111a40();\n    DAT_00162ee0 = 0;\n    iVar6 = FUN_00116d00();\n    if (iVar6 != 0) {\n      FUN_0012e000();\n      __s = local_198;\n      uVar5 = FUN_0011bf10();\n      __ptr_00 = (long *)(ulong)uVar5;\n      uVar8 = FUN_0011bf20();\n      plVar15 = (long *)(ulong)uVar8;\n      pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5);\n      sprintf((char *)__s,pcVar12,(ulong)uVar5);\n      pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5);\n      sprintf((char *)&local_c8,pcVar12,(ulong)uVar8);\n      if ((DAT_001637f4 != 0) && (uVar5 != 0)) {\n        if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }\n      }\n      if ((int)plVar15 == 0) {\n        DAT_00162ee0 = 1;\n      }\n      else if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }\n    }\n    fflush(stderr);\n    FUN_00117f20(DAT_00162ed8,param_2);\n    FUN_001167a0();\n    iVar6 = FUN_0011bf20();\n    if (iVar6 != 0) break;\n    FUN_0010c930();\n    xexit(0);\nLAB_00108bff:\n    FUN_0013abc0(FUN_0010a8a0);\n  } while( true );" do (compound_statement "{\n    FUN_0011a8a0(DAT_00162ec0,DAT_00163950,0,FUN_0010a810);\n    FUN_0011c840(DAT_00163888);\n    if (DAT_00163a50 == 0) {\n                    /* WARNING: Subroutine does not return */\n      FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7);\n    }\n    FUN_0012a810();\n    FUN_0010e380();\n    FUN_00126440(".gasversion.",0x15aad0,0x5a3d,&DAT_001638c0);\n    __ptr_00 = local_1a8;\n    uVar5 = local_19c;\n    while (local_1a8 = __ptr_00, local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0) {\n      uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800);\n      FUN_00129e10(uVar11);\n      FUN_00126560(uVar11);\n      puVar17 = (undefined8 *)*DAT_00162ed0;\n      free(DAT_00162ed0);\n      DAT_00162ed0 = puVar17;\n      __ptr_00 = local_1a8;\n      uVar5 = local_19c;\n    }\n    __s = (long *)(ulong)uVar5;\n    DAT_001637cc = 0;\n    DAT_00163930 = FUN_00125ca0(".text",0);\n    DAT_00163868 = FUN_00125ca0(".data",0);\n    DAT_001637d0 = FUN_00125ca0(&DAT_0013b3b5,0);\n    uVar8 = *(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163930,uVar8 & 0x1f);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163868,uVar8 & 0x27);\n    plVar15 = __ptr_00 + 1;\n    bfd_set_section_flags(DAT_00163a50,DAT_001637d0,uVar8 & 1);\n    pbVar1 = (byte *)(*(long *)(DAT_001637d0 + 0xa8) + 8);\n    *pbVar1 = *pbVar1 | 2;\n    FUN_00125ca0("*ABS*",0);\n    FUN_00125ca0(&DAT_0013b3c0,0);\n    DAT_00163898 = FUN_00125ca0("*GAS `reg\' section*",0);\n    DAT_001637c0 = FUN_00125ca0("*GAS `expr\' section*",0);\n    FUN_00125d00(DAT_00163930,0);\n    FUN_00132b90();\n    FUN_00135be0();\n    if (uVar5 == 1) {\nLAB_00108d46:\n      FUN_001239f0(&DAT_00142ab6);\n    }\n    else {\n      __s = __ptr_00 + (ulong)(uVar5 - 2) + 2;\n      __ptr_00 = (long *)0x0;\n      do {\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      } while (plVar15 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }\n    FUN_0010c560(0xffffffff);\n    if (DAT_00163878 != 0 || _DAT_001638a8 != 0) {\n      uVar11 = FUN_00125ca0(".note.GNU-stack",0);\n      bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18);\n    }\n    FUN_0010e390();\n    FUN_00111a40();\n    DAT_00162ee0 = 0;\n    iVar6 = FUN_00116d00();\n    if (iVar6 != 0) {\n      FUN_0012e000();\n      __s = local_198;\n      uVar5 = FUN_0011bf10();\n      __ptr_00 = (long *)(ulong)uVar5;\n      uVar8 = FUN_0011bf20();\n      plVar15 = (long *)(ulong)uVar8;\n      pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5);\n      sprintf((char *)__s,pcVar12,(ulong)uVar5);\n      pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5);\n      sprintf((char *)&local_c8,pcVar12,(ulong)uVar8);\n      if ((DAT_001637f4 != 0) && (uVar5 != 0)) {\n        if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }\n      }\n      if ((int)plVar15 == 0) {\n        DAT_00162ee0 = 1;\n      }\n      else if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }\n    }\n    fflush(stderr);\n    FUN_00117f20(DAT_00162ed8,param_2);\n    FUN_001167a0();\n    iVar6 = FUN_0011bf20();\n    if (iVar6 != 0) break;\n    FUN_0010c930();\n    xexit(0);\nLAB_00108bff:\n    FUN_0013abc0(FUN_0010a8a0);\n  }" { (expression_statement "FUN_0011a8a0(DAT_00162ec0,DAT_00163950,0,FUN_0010a810);" (call_expression "FUN_0011a8a0(DAT_00162ec0,DAT_00163950,0,FUN_0010a810)" identifier (argument_list "(DAT_00162ec0,DAT_00163950,0,FUN_0010a810)" ( identifier , identifier , number_literal , identifier ))) ;) (expression_statement "FUN_0011c840(DAT_00163888);" (call_expression "FUN_0011c840(DAT_00163888)" identifier (argument_list "(DAT_00163888)" ( identifier ))) ;) (if_statement "if (DAT_00163a50 == 0) {\n                    /* WARNING: Subroutine does not return */\n      FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7);\n    }" if (parenthesized_expression "(DAT_00163a50 == 0)" ( (binary_expression "DAT_00163a50 == 0" identifier == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n      FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7);\n    }" { comment (expression_statement "FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7);" (call_expression "FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7)" identifier (argument_list "("../../gas/as.c",0x519,&DAT_0013cef7)" ( (string_literal ""../../gas/as.c"" " string_content ") , number_literal , (pointer_expression "&DAT_0013cef7" & identifier) ))) ;) })) (expression_statement "FUN_0012a810();" (call_expression "FUN_0012a810()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_0010e380();" (call_expression "FUN_0010e380()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_00126440(".gasversion.",0x15aad0,0x5a3d,&DAT_001638c0);" (call_expression "FUN_00126440(".gasversion.",0x15aad0,0x5a3d,&DAT_001638c0)" identifier (argument_list "(".gasversion.",0x15aad0,0x5a3d,&DAT_001638c0)" ( (string_literal "".gasversion."" " string_content ") , number_literal , number_literal , (pointer_expression "&DAT_001638c0" & identifier) ))) ;) (expression_statement "__ptr_00 = local_1a8;" (assignment_expression "__ptr_00 = local_1a8" identifier = identifier) ;) (expression_statement "uVar5 = local_19c;" (assignment_expression "uVar5 = local_19c" identifier = identifier) ;) (while_statement "while (local_1a8 = __ptr_00, local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0) {\n      uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800);\n      FUN_00129e10(uVar11);\n      FUN_00126560(uVar11);\n      puVar17 = (undefined8 *)*DAT_00162ed0;\n      free(DAT_00162ed0);\n      DAT_00162ed0 = puVar17;\n      __ptr_00 = local_1a8;\n      uVar5 = local_19c;\n    }" while (parenthesized_expression "(local_1a8 = __ptr_00, local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0)" ( (comma_expression "local_1a8 = __ptr_00, local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0" (assignment_expression "local_1a8 = __ptr_00" identifier = identifier) , (comma_expression "local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0" (assignment_expression "local_19c = uVar5" identifier = identifier) , (binary_expression "DAT_00162ed0 != (undefined8 *)0x0" identifier != (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)))) )) (compound_statement "{\n      uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800);\n      FUN_00129e10(uVar11);\n      FUN_00126560(uVar11);\n      puVar17 = (undefined8 *)*DAT_00162ed0;\n      free(DAT_00162ed0);\n      DAT_00162ed0 = puVar17;\n      __ptr_00 = local_1a8;\n      uVar5 = local_19c;\n    }" { (expression_statement "uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800);" (assignment_expression "uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800)" identifier = (call_expression "FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800)" identifier (argument_list "(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800)" ( (subscript_expression "DAT_00162ed0[1]" identifier [ number_literal ]) , number_literal , (subscript_expression "DAT_00162ed0[2]" identifier [ number_literal ]) , (pointer_expression "&DAT_00163800" & identifier) )))) ;) (expression_statement "FUN_00129e10(uVar11);" (call_expression "FUN_00129e10(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (expression_statement "FUN_00126560(uVar11);" (call_expression "FUN_00126560(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (expression_statement "puVar17 = (undefined8 *)*DAT_00162ed0;" (assignment_expression "puVar17 = (undefined8 *)*DAT_00162ed0" identifier = (cast_expression "(undefined8 *)*DAT_00162ed0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*DAT_00162ed0" * identifier))) ;) (expression_statement "free(DAT_00162ed0);" (call_expression "free(DAT_00162ed0)" identifier (argument_list "(DAT_00162ed0)" ( identifier ))) ;) (expression_statement "DAT_00162ed0 = puVar17;" (assignment_expression "DAT_00162ed0 = puVar17" identifier = identifier) ;) (expression_statement "__ptr_00 = local_1a8;" (assignment_expression "__ptr_00 = local_1a8" identifier = identifier) ;) (expression_statement "uVar5 = local_19c;" (assignment_expression "uVar5 = local_19c" identifier = identifier) ;) })) (expression_statement "__s = (long *)(ulong)uVar5;" (assignment_expression "__s = (long *)(ulong)uVar5" identifier = (cast_expression "(long *)(ulong)uVar5" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "DAT_001637cc = 0;" (assignment_expression "DAT_001637cc = 0" identifier = number_literal) ;) (expression_statement "DAT_00163930 = FUN_00125ca0(".text",0);" (assignment_expression "DAT_00163930 = FUN_00125ca0(".text",0)" identifier = (call_expression "FUN_00125ca0(".text",0)" identifier (argument_list "(".text",0)" ( (string_literal "".text"" " string_content ") , number_literal )))) ;) (expression_statement "DAT_00163868 = FUN_00125ca0(".data",0);" (assignment_expression "DAT_00163868 = FUN_00125ca0(".data",0)" identifier = (call_expression "FUN_00125ca0(".data",0)" identifier (argument_list "(".data",0)" ( (string_literal "".data"" " string_content ") , number_literal )))) ;) (expression_statement "DAT_001637d0 = FUN_00125ca0(&DAT_0013b3b5,0);" (assignment_expression "DAT_001637d0 = FUN_00125ca0(&DAT_0013b3b5,0)" identifier = (call_expression "FUN_00125ca0(&DAT_0013b3b5,0)" identifier (argument_list "(&DAT_0013b3b5,0)" ( (pointer_expression "&DAT_0013b3b5" & identifier) , number_literal )))) ;) (expression_statement "uVar8 = *(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18);" (assignment_expression "uVar8 = *(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18)" identifier = (pointer_expression "*(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18)" * (cast_expression "(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(DAT_00163a50 + 8) + 0x18)" ( (binary_expression "*(long *)(DAT_00163a50 + 8) + 0x18" (pointer_expression "*(long *)(DAT_00163a50 + 8)" * (cast_expression "(long *)(DAT_00163a50 + 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_00163a50 + 8)" ( (binary_expression "DAT_00163a50 + 8" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "bfd_set_section_flags(DAT_00163a50,DAT_00163930,uVar8 & 0x1f);" (call_expression "bfd_set_section_flags(DAT_00163a50,DAT_00163930,uVar8 & 0x1f)" identifier (argument_list "(DAT_00163a50,DAT_00163930,uVar8 & 0x1f)" ( identifier , identifier , (binary_expression "uVar8 & 0x1f" identifier & number_literal) ))) ;) (expression_statement "bfd_set_section_flags(DAT_00163a50,DAT_00163868,uVar8 & 0x27);" (call_expression "bfd_set_section_flags(DAT_00163a50,DAT_00163868,uVar8 & 0x27)" identifier (argument_list "(DAT_00163a50,DAT_00163868,uVar8 & 0x27)" ( identifier , identifier , (binary_expression "uVar8 & 0x27" identifier & number_literal) ))) ;) (expression_statement "plVar15 = __ptr_00 + 1;" (assignment_expression "plVar15 = __ptr_00 + 1" identifier = (binary_expression "__ptr_00 + 1" identifier + number_literal)) ;) (expression_statement "bfd_set_section_flags(DAT_00163a50,DAT_001637d0,uVar8 & 1);" (call_expression "bfd_set_section_flags(DAT_00163a50,DAT_001637d0,uVar8 & 1)" identifier (argument_list "(DAT_00163a50,DAT_001637d0,uVar8 & 1)" ( identifier , identifier , (binary_expression "uVar8 & 1" identifier & number_literal) ))) ;) (expression_statement "pbVar1 = (byte *)(*(long *)(DAT_001637d0 + 0xa8) + 8);" (assignment_expression "pbVar1 = (byte *)(*(long *)(DAT_001637d0 + 0xa8) + 8)" identifier = (cast_expression "(byte *)(*(long *)(DAT_001637d0 + 0xa8) + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(DAT_001637d0 + 0xa8) + 8)" ( (binary_expression "*(long *)(DAT_001637d0 + 0xa8) + 8" (pointer_expression "*(long *)(DAT_001637d0 + 0xa8)" * (cast_expression "(long *)(DAT_001637d0 + 0xa8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_001637d0 + 0xa8)" ( (binary_expression "DAT_001637d0 + 0xa8" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "*pbVar1 = *pbVar1 | 2;" (assignment_expression "*pbVar1 = *pbVar1 | 2" (pointer_expression "*pbVar1" * identifier) = (binary_expression "*pbVar1 | 2" (pointer_expression "*pbVar1" * identifier) | number_literal)) ;) (expression_statement "FUN_00125ca0("*ABS*",0);" (call_expression "FUN_00125ca0("*ABS*",0)" identifier (argument_list "("*ABS*",0)" ( (string_literal ""*ABS*"" " string_content ") , number_literal ))) ;) (expression_statement "FUN_00125ca0(&DAT_0013b3c0,0);" (call_expression "FUN_00125ca0(&DAT_0013b3c0,0)" identifier (argument_list "(&DAT_0013b3c0,0)" ( (pointer_expression "&DAT_0013b3c0" & identifier) , number_literal ))) ;) (expression_statement "DAT_00163898 = FUN_00125ca0("*GAS `reg\' section*",0);" (assignment_expression "DAT_00163898 = FUN_00125ca0("*GAS `reg\' section*",0)" identifier = (call_expression "FUN_00125ca0("*GAS `reg\' section*",0)" identifier (argument_list "("*GAS `reg\' section*",0)" ( (string_literal ""*GAS `reg\' section*"" " string_content escape_sequence string_content ") , number_literal )))) ;) (expression_statement "DAT_001637c0 = FUN_00125ca0("*GAS `expr\' section*",0);" (assignment_expression "DAT_001637c0 = FUN_00125ca0("*GAS `expr\' section*",0)" identifier = (call_expression "FUN_00125ca0("*GAS `expr\' section*",0)" identifier (argument_list "("*GAS `expr\' section*",0)" ( (string_literal ""*GAS `expr\' section*"" " string_content escape_sequence string_content ") , number_literal )))) ;) (expression_statement "FUN_00125d00(DAT_00163930,0);" (call_expression "FUN_00125d00(DAT_00163930,0)" identifier (argument_list "(DAT_00163930,0)" ( identifier , number_literal ))) ;) (expression_statement "FUN_00132b90();" (call_expression "FUN_00132b90()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_00135be0();" (call_expression "FUN_00135be0()" identifier (argument_list "()" ( ))) ;) (if_statement "if (uVar5 == 1) {\nLAB_00108d46:\n      FUN_001239f0(&DAT_00142ab6);\n    }\n    else {\n      __s = __ptr_00 + (ulong)(uVar5 - 2) + 2;\n      __ptr_00 = (long *)0x0;\n      do {\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      } while (plVar15 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }" if (parenthesized_expression "(uVar5 == 1)" ( (binary_expression "uVar5 == 1" identifier == number_literal) )) (compound_statement "{\nLAB_00108d46:\n      FUN_001239f0(&DAT_00142ab6);\n    }" { (labeled_statement "LAB_00108d46:\n      FUN_001239f0(&DAT_00142ab6);" statement_identifier : (expression_statement "FUN_001239f0(&DAT_00142ab6);" (call_expression "FUN_001239f0(&DAT_00142ab6)" identifier (argument_list "(&DAT_00142ab6)" ( (pointer_expression "&DAT_00142ab6" & identifier) ))) ;)) }) (else_clause "else {\n      __s = __ptr_00 + (ulong)(uVar5 - 2) + 2;\n      __ptr_00 = (long *)0x0;\n      do {\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      } while (plVar15 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }" else (compound_statement "{\n      __s = __ptr_00 + (ulong)(uVar5 - 2) + 2;\n      __ptr_00 = (long *)0x0;\n      do {\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      } while (plVar15 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }" { (expression_statement "__s = __ptr_00 + (ulong)(uVar5 - 2) + 2;" (assignment_expression "__s = __ptr_00 + (ulong)(uVar5 - 2) + 2" identifier = (binary_expression "__ptr_00 + (ulong)(uVar5 - 2) + 2" (binary_expression "__ptr_00 + (ulong)(uVar5 - 2)" identifier + (call_expression "(ulong)(uVar5 - 2)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar5 - 2)" ( (binary_expression "uVar5 - 2" identifier - number_literal) )))) + number_literal)) ;) (expression_statement "__ptr_00 = (long *)0x0;" (assignment_expression "__ptr_00 = (long *)0x0" identifier = (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      } while (plVar15 != __s);" do (compound_statement "{\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      }" { (if_statement "if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }" if (parenthesized_expression "(*plVar15 != 0)" ( (binary_expression "*plVar15 != 0" (pointer_expression "*plVar15" * identifier) != number_literal) )) (compound_statement "{\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }" { (expression_statement "__ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);" (assignment_expression "__ptr_00 = (long *)(ulong)((int)__ptr_00 + 1)" identifier = (cast_expression "(long *)(ulong)((int)__ptr_00 + 1)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (call_expression "(ulong)((int)__ptr_00 + 1)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "((int)__ptr_00 + 1)" ( (binary_expression "(int)__ptr_00 + 1" (cast_expression "(int)__ptr_00" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "FUN_001239f0();" (call_expression "FUN_001239f0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "plVar15 = plVar15 + 1;" (assignment_expression "plVar15 = plVar15 + 1" identifier = (binary_expression "plVar15 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(plVar15 != __s)" ( (binary_expression "plVar15 != __s" identifier != identifier) )) ;) (if_statement "if ((int)__ptr_00 == 0) goto LAB_00108d46;" if (parenthesized_expression "((int)__ptr_00 == 0)" ( (binary_expression "(int)__ptr_00 == 0" (cast_expression "(int)__ptr_00" ( (type_descriptor "int" primitive_type) ) identifier) == number_literal) )) (goto_statement "goto LAB_00108d46;" goto statement_identifier ;)) }))) (expression_statement "FUN_0010c560(0xffffffff);" (call_expression "FUN_0010c560(0xffffffff)" identifier (argument_list "(0xffffffff)" ( number_literal ))) ;) (if_statement "if (DAT_00163878 != 0 || _DAT_001638a8 != 0) {\n      uVar11 = FUN_00125ca0(".note.GNU-stack",0);\n      bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18);\n    }" if (parenthesized_expression "(DAT_00163878 != 0 || _DAT_001638a8 != 0)" ( (binary_expression "DAT_00163878 != 0 || _DAT_001638a8 != 0" (binary_expression "DAT_00163878 != 0" identifier != number_literal) || (binary_expression "_DAT_001638a8 != 0" identifier != number_literal)) )) (compound_statement "{\n      uVar11 = FUN_00125ca0(".note.GNU-stack",0);\n      bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18);\n    }" { (expression_statement "uVar11 = FUN_00125ca0(".note.GNU-stack",0);" (assignment_expression "uVar11 = FUN_00125ca0(".note.GNU-stack",0)" identifier = (call_expression "FUN_00125ca0(".note.GNU-stack",0)" identifier (argument_list "(".note.GNU-stack",0)" ( (string_literal "".note.GNU-stack"" " string_content ") , number_literal )))) ;) (expression_statement "bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18);" (call_expression "bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18)" identifier (argument_list "(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18)" ( identifier , identifier , (binary_expression "(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18" (parenthesized_expression "(-(uint)(DAT_00163878 == 0) & 0xfffffff0)" ( (binary_expression "-(uint)(DAT_00163878 == 0) & 0xfffffff0" (unary_expression "-(uint)(DAT_00163878 == 0)" - (call_expression "(uint)(DAT_00163878 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(DAT_00163878 == 0)" ( (binary_expression "DAT_00163878 == 0" identifier == number_literal) )))) & number_literal) )) + number_literal) ))) ;) })) (expression_statement "FUN_0010e390();" (call_expression "FUN_0010e390()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_00111a40();" (call_expression "FUN_00111a40()" identifier (argument_list "()" ( ))) ;) (expression_statement "DAT_00162ee0 = 0;" (assignment_expression "DAT_00162ee0 = 0" identifier = number_literal) ;) (expression_statement "iVar6 = FUN_00116d00();" (assignment_expression "iVar6 = FUN_00116d00()" identifier = (call_expression "FUN_00116d00()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar6 != 0) {\n      FUN_0012e000();\n      __s = local_198;\n      uVar5 = FUN_0011bf10();\n      __ptr_00 = (long *)(ulong)uVar5;\n      uVar8 = FUN_0011bf20();\n      plVar15 = (long *)(ulong)uVar8;\n      pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5);\n      sprintf((char *)__s,pcVar12,(ulong)uVar5);\n      pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5);\n      sprintf((char *)&local_c8,pcVar12,(ulong)uVar8);\n      if ((DAT_001637f4 != 0) && (uVar5 != 0)) {\n        if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }\n      }\n      if ((int)plVar15 == 0) {\n        DAT_00162ee0 = 1;\n      }\n      else if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }\n    }" if (parenthesized_expression "(iVar6 != 0)" ( (binary_expression "iVar6 != 0" identifier != number_literal) )) (compound_statement "{\n      FUN_0012e000();\n      __s = local_198;\n      uVar5 = FUN_0011bf10();\n      __ptr_00 = (long *)(ulong)uVar5;\n      uVar8 = FUN_0011bf20();\n      plVar15 = (long *)(ulong)uVar8;\n      pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5);\n      sprintf((char *)__s,pcVar12,(ulong)uVar5);\n      pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5);\n      sprintf((char *)&local_c8,pcVar12,(ulong)uVar8);\n      if ((DAT_001637f4 != 0) && (uVar5 != 0)) {\n        if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }\n      }\n      if ((int)plVar15 == 0) {\n        DAT_00162ee0 = 1;\n      }\n      else if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }\n    }" { (expression_statement "FUN_0012e000();" (call_expression "FUN_0012e000()" identifier (argument_list "()" ( ))) ;) (expression_statement "__s = local_198;" (assignment_expression "__s = local_198" identifier = identifier) ;) (expression_statement "uVar5 = FUN_0011bf10();" (assignment_expression "uVar5 = FUN_0011bf10()" identifier = (call_expression "FUN_0011bf10()" identifier (argument_list "()" ( )))) ;) (expression_statement "__ptr_00 = (long *)(ulong)uVar5;" (assignment_expression "__ptr_00 = (long *)(ulong)uVar5" identifier = (cast_expression "(long *)(ulong)uVar5" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "uVar8 = FUN_0011bf20();" (assignment_expression "uVar8 = FUN_0011bf20()" identifier = (call_expression "FUN_0011bf20()" identifier (argument_list "()" ( )))) ;) (expression_statement "plVar15 = (long *)(ulong)uVar8;" (assignment_expression "plVar15 = (long *)(ulong)uVar8" identifier = (cast_expression "(long *)(ulong)uVar8" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (cast_expression "(ulong)uVar8" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5);" (assignment_expression "pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5)" identifier = (cast_expression "(char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5)" identifier (argument_list "(0,"%d warning","%d warnings",(long)(int)uVar5,5)" ( number_literal , (string_literal ""%d warning"" " string_content ") , (string_literal ""%d warnings"" " string_content ") , (cast_expression "(long)(int)uVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)uVar5" ( (type_descriptor "int" primitive_type) ) identifier)) , number_literal ))))) ;) (expression_statement "sprintf((char *)__s,pcVar12,(ulong)uVar5);" (call_expression "sprintf((char *)__s,pcVar12,(ulong)uVar5)" identifier (argument_list "((char *)__s,pcVar12,(ulong)uVar5)" ( (cast_expression "(char *)__s" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , identifier , (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier) ))) ;) (expression_statement "pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5);" (assignment_expression "pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5)" identifier = (cast_expression "(char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5)" identifier (argument_list "(0,"%d error","%d errors",(long)(int)uVar8,5)" ( number_literal , (string_literal ""%d error"" " string_content ") , (string_literal ""%d errors"" " string_content ") , (cast_expression "(long)(int)uVar8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)uVar8" ( (type_descriptor "int" primitive_type) ) identifier)) , number_literal ))))) ;) (expression_statement "sprintf((char *)&local_c8,pcVar12,(ulong)uVar8);" (call_expression "sprintf((char *)&local_c8,pcVar12,(ulong)uVar8)" identifier (argument_list "((char *)&local_c8,pcVar12,(ulong)uVar8)" ( (cast_expression "(char *)&local_c8" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_c8" & identifier)) , identifier , (cast_expression "(ulong)uVar8" ( (type_descriptor "ulong" type_identifier) ) identifier) ))) ;) (if_statement "if ((DAT_001637f4 != 0) && (uVar5 != 0)) {\n        if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }\n      }" if (parenthesized_expression "((DAT_001637f4 != 0) && (uVar5 != 0))" ( (binary_expression "(DAT_001637f4 != 0) && (uVar5 != 0)" (parenthesized_expression "(DAT_001637f4 != 0)" ( (binary_expression "DAT_001637f4 != 0" identifier != number_literal) )) && (parenthesized_expression "(uVar5 != 0)" ( (binary_expression "uVar5 != 0" identifier != number_literal) ))) )) (compound_statement "{\n        if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }\n      }" { (if_statement "if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }" if (parenthesized_expression "(uVar8 == 0)" ( (binary_expression "uVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }" { (expression_statement "plVar15 = (long *)(ulong)uVar5;" (assignment_expression "plVar15 = (long *)(ulong)uVar5" identifier = (cast_expression "(long *)(ulong)uVar5" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "uVar11 = dcgettext(0,"%s, treating warnings as errors",5);" (assignment_expression "uVar11 = dcgettext(0,"%s, treating warnings as errors",5)" identifier = (call_expression "dcgettext(0,"%s, treating warnings as errors",5)" identifier (argument_list "(0,"%s, treating warnings as errors",5)" ( number_literal , (string_literal ""%s, treating warnings as errors"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_0011c1c0(uVar11,__s);" (call_expression "FUN_0011c1c0(uVar11,__s)" identifier (argument_list "(uVar11,__s)" ( identifier , identifier ))) ;) }) (else_clause "else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }" else (compound_statement "{\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }" { (expression_statement "plVar15 = (long *)(ulong)(uVar8 + uVar5);" (assignment_expression "plVar15 = (long *)(ulong)(uVar8 + uVar5)" identifier = (cast_expression "(long *)(ulong)(uVar8 + uVar5)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (call_expression "(ulong)(uVar8 + uVar5)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar8 + uVar5)" ( (binary_expression "uVar8 + uVar5" identifier + identifier) ))))) ;) }))) })) (if_statement "if ((int)plVar15 == 0) {\n        DAT_00162ee0 = 1;\n      }\n      else if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }" if (parenthesized_expression "((int)plVar15 == 0)" ( (binary_expression "(int)plVar15 == 0" (cast_expression "(int)plVar15" ( (type_descriptor "int" primitive_type) ) identifier) == number_literal) )) (compound_statement "{\n        DAT_00162ee0 = 1;\n      }" { (expression_statement "DAT_00162ee0 = 1;" (assignment_expression "DAT_00162ee0 = 1" identifier = number_literal) ;) }) (else_clause "else if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }" else (if_statement "if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }" if (parenthesized_expression "(DAT_00163870 != '\0')" ( (binary_expression "DAT_00163870 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }" { (expression_statement "DAT_00162ee0 = 1;" (assignment_expression "DAT_00162ee0 = 1" identifier = number_literal) ;) (expression_statement "pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);" (assignment_expression "pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"%s, %s, generating bad object file\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"%s, %s, generating bad object file\n",5)" identifier (argument_list "(0,"%s, %s, generating bad object file\n",5)" ( number_literal , (string_literal ""%s, %s, generating bad object file\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "fprintf(stderr,pcVar12,&local_c8,__s);" (call_expression "fprintf(stderr,pcVar12,&local_c8,__s)" identifier (argument_list "(stderr,pcVar12,&local_c8,__s)" ( identifier , identifier , (pointer_expression "&local_c8" & identifier) , identifier ))) ;) })))) })) (expression_statement "fflush(stderr);" (call_expression "fflush(stderr)" identifier (argument_list "(stderr)" ( identifier ))) ;) (expression_statement "FUN_00117f20(DAT_00162ed8,param_2);" (call_expression "FUN_00117f20(DAT_00162ed8,param_2)" identifier (argument_list "(DAT_00162ed8,param_2)" ( identifier , identifier ))) ;) (expression_statement "FUN_001167a0();" (call_expression "FUN_001167a0()" identifier (argument_list "()" ( ))) ;) (expression_statement "iVar6 = FUN_0011bf20();" (assignment_expression "iVar6 = FUN_0011bf20()" identifier = (call_expression "FUN_0011bf20()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar6 != 0) break;" if (parenthesized_expression "(iVar6 != 0)" ( (binary_expression "iVar6 != 0" identifier != number_literal) )) (break_statement "break;" break ;)) (expression_statement "FUN_0010c930();" (call_expression "FUN_0010c930()" identifier (argument_list "()" ( ))) ;) (expression_statement "xexit(0);" (call_expression "xexit(0)" identifier (argument_list "(0)" ( number_literal ))) ;) (labeled_statement "LAB_00108bff:\n    FUN_0013abc0(FUN_0010a8a0);" statement_identifier : (expression_statement "FUN_0013abc0(FUN_0010a8a0);" (call_expression "FUN_0013abc0(FUN_0010a8a0)" identifier (argument_list "(FUN_0010a8a0)" ( identifier ))) ;)) }) while (parenthesized_expression "( true )" ( true )) ;) (expression_statement "xexit(1);" (call_expression "xexit(1)" identifier (argument_list "(1)" ( number_literal ))) ;) (expression_statement "iVar6 = strcasecmp(__s1,"warning");" (assignment_expression "iVar6 = strcasecmp(__s1,"warning")" identifier = (call_expression "strcasecmp(__s1,"warning")" identifier (argument_list "(__s1,"warning")" ( identifier , (string_literal ""warning"" " string_content ") )))) ;) (if_statement "if (iVar6 != 0) {\n    uVar11 = dcgettext(0,"Invalid --size-check= option: `%s\'",5);\n                    /* WARNING: Subroutine does not return */\n    FUN_0011c360(uVar11,__s1);\n  }" if (parenthesized_expression "(iVar6 != 0)" ( (binary_expression "iVar6 != 0" identifier != number_literal) )) (compound_statement "{\n    uVar11 = dcgettext(0,"Invalid --size-check= option: `%s\'",5);\n                    /* WARNING: Subroutine does not return */\n    FUN_0011c360(uVar11,__s1);\n  }" { (expression_statement "uVar11 = dcgettext(0,"Invalid --size-check= option: `%s\'",5);" (assignment_expression "uVar11 = dcgettext(0,"Invalid --size-check= option: `%s\'",5)" identifier = (call_expression "dcgettext(0,"Invalid --size-check= option: `%s\'",5)" identifier (argument_list "(0,"Invalid --size-check= option: `%s\'",5)" ( number_literal , (string_literal ""Invalid --size-check= option: `%s\'"" " string_content escape_sequence ") , number_literal )))) ;) comment (expression_statement "FUN_0011c360(uVar11,__s1);" (call_expression "FUN_0011c360(uVar11,__s1)" identifier (argument_list "(uVar11,__s1)" ( identifier , identifier ))) ;) })) (expression_statement "DAT_001638b0 = 1;" (assignment_expression "DAT_001638b0 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_00107958;" goto statement_identifier ;) })))
(translation_unit "int main(int argc,char **argv)\n\n{\n  byte *pbVar1;\n  undefined1 (*pauVar2) [16];\n  undefined8 uVar3;\n  defsym_list *pdVar4;\n  undefined *puVar5;\n  size_t sVar6;\n  uint uVar7;\n  uint uVar8;\n  int iVar9;\n  int iVar10;\n  uint uVar11;\n  void *__ptr;\n  char **__ptr_00;\n  char **ppcVar12;\n  char *pcVar13;\n  symbolS *s;\n  segT paVar14;\n  char *format;\n  long lVar15;\n  ulong uVar16;\n  char **ppcVar17;\n  char *pcVar18;\n  undefined8 *puVar19;\n  undefined8 *puVar20;\n  char **__s;\n  byte bVar21;\n  char **local_1a8;\n  uint local_1a0;\n  uint local_19c;\n  char warn_msg [50];\n  stat sob;\n  stat sib;\n  \n  bVar21 = 0;\n  local_1a8 = argv;\n  local_19c = argc;\n  start_time = get_run_time();\n  signal_init();\n  setlocale(5,"");\n  setlocale(0,"");\n  bindtextdomain(&DAT_0013b28d,"/usr/share/locale");\n  textdomain(&DAT_0013b28d);\n  if (debug_memory != 0) {\n    chunksize = 0x40;\n  }\n  myname = *local_1a8;\n  xmalloc_set_program_name();\n  expandargv((int *)&local_19c,&local_1a8);\n  out_file_name = "a.out";\n  hex_init();\n  bfd_init();\n  bfd_set_error_program_name(myname);\n  __ptr = (void *)concat(std_shortopts_14525,md_shortopts,0);\n  __ptr_00 = (char **)xmalloc(md_longopts_size + 0x580);\n  puVar5 = std_longopts_14566;\n  __ptr_00[0xab] = DAT_0014ef18;\n  *__ptr_00 = puVar5;\n  lVar15 = (long)__ptr_00 - (long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);\n  puVar19 = (undefined8 *)((long)&std_longopts_14566 - lVar15);\n  puVar20 = (undefined8 *)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);\n  for (uVar16 = (ulong)((int)lVar15 + 0x560U >> 3); sVar6 = md_longopts_size, uVar16 != 0;\n      uVar16 = uVar16 - 1) {\n    *puVar20 = *puVar19;\n    puVar19 = puVar19 + (ulong)bVar21 * -2 + 1;\n    puVar20 = puVar20 + (ulong)bVar21 * -2 + 1;\n  }\n  memcpy(__ptr_00 + 0xac,md_longopts,md_longopts_size);\n  uVar7 = local_19c;\n  __s = local_1a8;\n  pauVar2 = (undefined1 (*) [16])((long)__ptr_00 + sVar6 + 0x560);\n  *pauVar2 = (undefined1  [16])0x0;\n  ppcVar17 = (char **)&DAT_0013cb10;\n  pauVar2[1] = (undefined1  [16])0x0;\n  ppcVar12 = (char **)xmalloc((long)(int)(local_19c + 1) << 3);\n  local_1a0 = 1;\n  pcVar13 = *__s;\n  ppcVar12[1] = (char *)0x0;\n  *ppcVar12 = pcVar13;\nLAB_00107958:\n  while( true ) {\n    uVar8 = getopt_long_only(uVar7,__s,__ptr,__ptr_00,&sib);\n    pcVar13 = (char *)(ulong)uVar8;\n    if (uVar8 == 0xffffffff) break;\n    if (uVar8 < 0xba) {\n                    /* WARNING: Could not recover jumptable at 0x00107989. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      iVar9 = (*(code *)((long)*(int *)((long)ppcVar17 + (ulong)uVar8 * 4) + (long)ppcVar17))();\n      return iVar9;\n    }\n    iVar9 = md_parse_option(uVar8,optarg);\n    if (iVar9 == 0) {\n      if (uVar8 != 0x76) {\n        pcVar18 = optarg;\n        if (optarg == (char *)0x0) {\n          pcVar18 = "";\n        }\n        format = (char *)dcgettext(0,"unrecognized option -%c%s",5);\n        as_bad(format,pcVar13,pcVar18);\n                    /* WARNING: Subroutine does not return */\n        exit(1);\n      }\n      if (printed_14511 == 0) {\n        print_version_id();\n      }\n      verbose = 1;\n    }\n  }\n  free(__ptr);\n  free(__ptr_00);\n  local_19c = local_1a0;\n  local_1a8 = ppcVar12;\n  riscv_after_parse_args();\n  if (((1 < (int)local_19c) && (iVar9 = __xstat(1,out_file_name,(stat *)&sob), iVar9 == 0)) &&\n     (1 < (int)local_19c)) {\n    lVar15 = 8;\n    iVar9 = 1;\n    do {\n      iVar10 = __xstat(1,*(char **)((long)local_1a8 + lVar15),(stat *)&sib);\n      pcVar18 = out_file_name;\n      if (((iVar10 == 0) && (sob.st_ino == sib.st_ino)) &&\n         ((sib.st_ino != 0 && (sib.st_dev == sob.st_dev)))) {\n        out_file_name = (char *)0x0;\n        uVar3 = *(undefined8 *)((long)local_1a8 + lVar15);\n        pcVar13 = (char *)dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    /* WARNING: Subroutine does not return */\n        as_fatal(pcVar13,uVar3,pcVar18);\n      }\n      iVar9 = iVar9 + 1;\n      lVar15 = lVar15 + 8;\n    } while (iVar9 < (int)local_19c);\n  }\n  symbol_begin();\n  frag_init();\n  subsegs_begin();\n  read_begin();\n  input_scrub_begin();\n  expr_begin();\n  xatexit(close_output_file);\n  if (flag_print_statistics != '\0') goto LAB_00108bff;\n  do {\n    macro_init(flag_macro_alternate,flag_mri,0,macro_expr);\n    output_file_create(out_file_name);\n    if (stdoutput == (bfd *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      as_abort("../../gas/as.c",0x519,"main");\n    }\n    dot_symbol_init();\n    dwarf2_init();\n    local_symbol_make(".gasversion.",(segT)(_bfd_std_section + 0x230),0x5a3d,\n                      &predefined_address_frag);\n    __ptr_00 = local_1a8;\n    uVar8 = local_19c;\n    while (local_1a8 = __ptr_00, local_19c = uVar8, defsyms != (defsym_list *)0x0) {\n      s = symbol_new(defsyms->name,(segT)(_bfd_std_section + 0x230),defsyms->value,\n                     &zero_address_frag);\n      S_SET_VOLATILE(s);\n      symbol_table_insert(s);\n      pdVar4 = defsyms->next;\n      free(defsyms);\n      defsyms = pdVar4;\n      __ptr_00 = local_1a8;\n      uVar8 = local_19c;\n    }\n    __s = (char **)(ulong)uVar8;\n    need_pass_2 = 0;\n    text_section = subseg_new(".text",0);\n    data_section = subseg_new(".data",0);\n    bss_section = subseg_new(".bss",0);\n    uVar11 = stdoutput->xvec->section_flags;\n    bfd_set_section_flags(stdoutput,text_section,uVar11 & 0x1f);\n    bfd_set_section_flags(stdoutput,data_section,uVar11 & 0x27);\n    ppcVar17 = __ptr_00 + 1;\n    bfd_set_section_flags(stdoutput,bss_section,uVar11 & 1);\n    pbVar1 = (byte *)((long)bss_section->userdata + 8);\n    *pbVar1 = *pbVar1 | 2;\n    subseg_new("*ABS*",0);\n    subseg_new("*UND*",0);\n    reg_section = subseg_new("*GAS `reg\' section*",0);\n    expr_section = subseg_new("*GAS `expr\' section*",0);\n    subseg_set(text_section,0);\n    md_begin();\n    elf_begin();\n    if (uVar8 == 1) {\nLAB_00108d46:\n      read_a_source_file("");\n    }\n    else {\n      __s = __ptr_00 + (ulong)(uVar8 - 2) + 2;\n      __ptr_00 = (char **)0x0;\n      do {\n        if (*ppcVar17 != (char *)0x0) {\n          __ptr_00 = (char **)(ulong)((int)__ptr_00 + 1);\n          read_a_source_file(*ppcVar17);\n        }\n        ppcVar17 = ppcVar17 + 1;\n      } while (ppcVar17 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }\n    cond_finish_check(-1);\n    if (flag_execstack != 0 || flag_noexecstack != 0) {\n      paVar14 = subseg_new(".note.GNU-stack",0);\n      bfd_set_section_flags(stdoutput,paVar14,(-(uint)(flag_execstack == 0) & 0xfffffff0) + 0x18);\n    }\n    dwarf2_finish();\n    cfi_finish();\n    keep_it = 0;\n    iVar9 = seen_at_least_1_file();\n    if (iVar9 != 0) {\n      write_object_file();\n      __s = (char **)warn_msg;\n      uVar8 = had_warnings();\n      __ptr_00 = (char **)(ulong)uVar8;\n      uVar11 = had_errors();\n      ppcVar17 = (char **)(ulong)uVar11;\n      pcVar18 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar8,5);\n      sprintf((char *)__s,pcVar18,(ulong)uVar8);\n      pcVar18 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar11,5);\n      sprintf((char *)&sib,pcVar18,(ulong)uVar11);\n      if ((flag_fatal_warnings != 0) && (uVar8 != 0)) {\n        if (uVar11 == 0) {\n          ppcVar17 = (char **)(ulong)uVar8;\n          pcVar18 = (char *)dcgettext(0,"%s, treating warnings as errors",5);\n          as_bad(pcVar18,__s);\n        }\n        else {\n          ppcVar17 = (char **)(ulong)(uVar11 + uVar8);\n        }\n      }\n      if ((int)ppcVar17 == 0) {\n        keep_it = 1;\n      }\n      else if (flag_always_generate_output != '\0') {\n        keep_it = 1;\n        pcVar18 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar18,&sib,__s);\n      }\n    }\n    fflush(stderr);\n    listing_print(listing_filename,argv);\n    input_scrub_end();\n    iVar9 = had_errors();\n    if (iVar9 != 0) break;\n    print_dependencies();\n    xexit(0);\nLAB_00108bff:\n    xatexit(dump_statistics);\n  } while( true );\n  xexit(1);\n  iVar9 = strcasecmp(pcVar13,"warning");\n  if (iVar9 != 0) {\n    pcVar18 = (char *)dcgettext(0,"Invalid --size-check= option: `%s\'",5);\n                    /* WARNING: Subroutine does not return */\n    as_fatal(pcVar18,pcVar13);\n  }\n  flag_allow_nonconst_size = 1;\n  goto LAB_00107958;\n}\n\n" (function_definition "int main(int argc,char **argv)\n\n{\n  byte *pbVar1;\n  undefined1 (*pauVar2) [16];\n  undefined8 uVar3;\n  defsym_list *pdVar4;\n  undefined *puVar5;\n  size_t sVar6;\n  uint uVar7;\n  uint uVar8;\n  int iVar9;\n  int iVar10;\n  uint uVar11;\n  void *__ptr;\n  char **__ptr_00;\n  char **ppcVar12;\n  char *pcVar13;\n  symbolS *s;\n  segT paVar14;\n  char *format;\n  long lVar15;\n  ulong uVar16;\n  char **ppcVar17;\n  char *pcVar18;\n  undefined8 *puVar19;\n  undefined8 *puVar20;\n  char **__s;\n  byte bVar21;\n  char **local_1a8;\n  uint local_1a0;\n  uint local_19c;\n  char warn_msg [50];\n  stat sob;\n  stat sib;\n  \n  bVar21 = 0;\n  local_1a8 = argv;\n  local_19c = argc;\n  start_time = get_run_time();\n  signal_init();\n  setlocale(5,"");\n  setlocale(0,"");\n  bindtextdomain(&DAT_0013b28d,"/usr/share/locale");\n  textdomain(&DAT_0013b28d);\n  if (debug_memory != 0) {\n    chunksize = 0x40;\n  }\n  myname = *local_1a8;\n  xmalloc_set_program_name();\n  expandargv((int *)&local_19c,&local_1a8);\n  out_file_name = "a.out";\n  hex_init();\n  bfd_init();\n  bfd_set_error_program_name(myname);\n  __ptr = (void *)concat(std_shortopts_14525,md_shortopts,0);\n  __ptr_00 = (char **)xmalloc(md_longopts_size + 0x580);\n  puVar5 = std_longopts_14566;\n  __ptr_00[0xab] = DAT_0014ef18;\n  *__ptr_00 = puVar5;\n  lVar15 = (long)__ptr_00 - (long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);\n  puVar19 = (undefined8 *)((long)&std_longopts_14566 - lVar15);\n  puVar20 = (undefined8 *)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);\n  for (uVar16 = (ulong)((int)lVar15 + 0x560U >> 3); sVar6 = md_longopts_size, uVar16 != 0;\n      uVar16 = uVar16 - 1) {\n    *puVar20 = *puVar19;\n    puVar19 = puVar19 + (ulong)bVar21 * -2 + 1;\n    puVar20 = puVar20 + (ulong)bVar21 * -2 + 1;\n  }\n  memcpy(__ptr_00 + 0xac,md_longopts,md_longopts_size);\n  uVar7 = local_19c;\n  __s = local_1a8;\n  pauVar2 = (undefined1 (*) [16])((long)__ptr_00 + sVar6 + 0x560);\n  *pauVar2 = (undefined1  [16])0x0;\n  ppcVar17 = (char **)&DAT_0013cb10;\n  pauVar2[1] = (undefined1  [16])0x0;\n  ppcVar12 = (char **)xmalloc((long)(int)(local_19c + 1) << 3);\n  local_1a0 = 1;\n  pcVar13 = *__s;\n  ppcVar12[1] = (char *)0x0;\n  *ppcVar12 = pcVar13;\nLAB_00107958:\n  while( true ) {\n    uVar8 = getopt_long_only(uVar7,__s,__ptr,__ptr_00,&sib);\n    pcVar13 = (char *)(ulong)uVar8;\n    if (uVar8 == 0xffffffff) break;\n    if (uVar8 < 0xba) {\n                    /* WARNING: Could not recover jumptable at 0x00107989. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      iVar9 = (*(code *)((long)*(int *)((long)ppcVar17 + (ulong)uVar8 * 4) + (long)ppcVar17))();\n      return iVar9;\n    }\n    iVar9 = md_parse_option(uVar8,optarg);\n    if (iVar9 == 0) {\n      if (uVar8 != 0x76) {\n        pcVar18 = optarg;\n        if (optarg == (char *)0x0) {\n          pcVar18 = "";\n        }\n        format = (char *)dcgettext(0,"unrecognized option -%c%s",5);\n        as_bad(format,pcVar13,pcVar18);\n                    /* WARNING: Subroutine does not return */\n        exit(1);\n      }\n      if (printed_14511 == 0) {\n        print_version_id();\n      }\n      verbose = 1;\n    }\n  }\n  free(__ptr);\n  free(__ptr_00);\n  local_19c = local_1a0;\n  local_1a8 = ppcVar12;\n  riscv_after_parse_args();\n  if (((1 < (int)local_19c) && (iVar9 = __xstat(1,out_file_name,(stat *)&sob), iVar9 == 0)) &&\n     (1 < (int)local_19c)) {\n    lVar15 = 8;\n    iVar9 = 1;\n    do {\n      iVar10 = __xstat(1,*(char **)((long)local_1a8 + lVar15),(stat *)&sib);\n      pcVar18 = out_file_name;\n      if (((iVar10 == 0) && (sob.st_ino == sib.st_ino)) &&\n         ((sib.st_ino != 0 && (sib.st_dev == sob.st_dev)))) {\n        out_file_name = (char *)0x0;\n        uVar3 = *(undefined8 *)((long)local_1a8 + lVar15);\n        pcVar13 = (char *)dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    /* WARNING: Subroutine does not return */\n        as_fatal(pcVar13,uVar3,pcVar18);\n      }\n      iVar9 = iVar9 + 1;\n      lVar15 = lVar15 + 8;\n    } while (iVar9 < (int)local_19c);\n  }\n  symbol_begin();\n  frag_init();\n  subsegs_begin();\n  read_begin();\n  input_scrub_begin();\n  expr_begin();\n  xatexit(close_output_file);\n  if (flag_print_statistics != '\0') goto LAB_00108bff;\n  do {\n    macro_init(flag_macro_alternate,flag_mri,0,macro_expr);\n    output_file_create(out_file_name);\n    if (stdoutput == (bfd *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      as_abort("../../gas/as.c",0x519,"main");\n    }\n    dot_symbol_init();\n    dwarf2_init();\n    local_symbol_make(".gasversion.",(segT)(_bfd_std_section + 0x230),0x5a3d,\n                      &predefined_address_frag);\n    __ptr_00 = local_1a8;\n    uVar8 = local_19c;\n    while (local_1a8 = __ptr_00, local_19c = uVar8, defsyms != (defsym_list *)0x0) {\n      s = symbol_new(defsyms->name,(segT)(_bfd_std_section + 0x230),defsyms->value,\n                     &zero_address_frag);\n      S_SET_VOLATILE(s);\n      symbol_table_insert(s);\n      pdVar4 = defsyms->next;\n      free(defsyms);\n      defsyms = pdVar4;\n      __ptr_00 = local_1a8;\n      uVar8 = local_19c;\n    }\n    __s = (char **)(ulong)uVar8;\n    need_pass_2 = 0;\n    text_section = subseg_new(".text",0);\n    data_section = subseg_new(".data",0);\n    bss_section = subseg_new(".bss",0);\n    uVar11 = stdoutput->xvec->section_flags;\n    bfd_set_section_flags(stdoutput,text_section,uVar11 & 0x1f);\n    bfd_set_section_flags(stdoutput,data_section,uVar11 & 0x27);\n    ppcVar17 = __ptr_00 + 1;\n    bfd_set_section_flags(stdoutput,bss_section,uVar11 & 1);\n    pbVar1 = (byte *)((long)bss_section->userdata + 8);\n    *pbVar1 = *pbVar1 | 2;\n    subseg_new("*ABS*",0);\n    subseg_new("*UND*",0);\n    reg_section = subseg_new("*GAS `reg\' section*",0);\n    expr_section = subseg_new("*GAS `expr\' section*",0);\n    subseg_set(text_section,0);\n    md_begin();\n    elf_begin();\n    if (uVar8 == 1) {\nLAB_00108d46:\n      read_a_source_file("");\n    }\n    else {\n      __s = __ptr_00 + (ulong)(uVar8 - 2) + 2;\n      __ptr_00 = (char **)0x0;\n      do {\n        if (*ppcVar17 != (char *)0x0) {\n          __ptr_00 = (char **)(ulong)((int)__ptr_00 + 1);\n          read_a_source_file(*ppcVar17);\n        }\n        ppcVar17 = ppcVar17 + 1;\n      } while (ppcVar17 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }\n    cond_finish_check(-1);\n    if (flag_execstack != 0 || flag_noexecstack != 0) {\n      paVar14 = subseg_new(".note.GNU-stack",0);\n      bfd_set_section_flags(stdoutput,paVar14,(-(uint)(flag_execstack == 0) & 0xfffffff0) + 0x18);\n    }\n    dwarf2_finish();\n    cfi_finish();\n    keep_it = 0;\n    iVar9 = seen_at_least_1_file();\n    if (iVar9 != 0) {\n      write_object_file();\n      __s = (char **)warn_msg;\n      uVar8 = had_warnings();\n      __ptr_00 = (char **)(ulong)uVar8;\n      uVar11 = had_errors();\n      ppcVar17 = (char **)(ulong)uVar11;\n      pcVar18 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar8,5);\n      sprintf((char *)__s,pcVar18,(ulong)uVar8);\n      pcVar18 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar11,5);\n      sprintf((char *)&sib,pcVar18,(ulong)uVar11);\n      if ((flag_fatal_warnings != 0) && (uVar8 != 0)) {\n        if (uVar11 == 0) {\n          ppcVar17 = (char **)(ulong)uVar8;\n          pcVar18 = (char *)dcgettext(0,"%s, treating warnings as errors",5);\n          as_bad(pcVar18,__s);\n        }\n        else {\n          ppcVar17 = (char **)(ulong)(uVar11 + uVar8);\n        }\n      }\n      if ((int)ppcVar17 == 0) {\n        keep_it = 1;\n      }\n      else if (flag_always_generate_output != '\0') {\n        keep_it = 1;\n        pcVar18 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar18,&sib,__s);\n      }\n    }\n    fflush(stderr);\n    listing_print(listing_filename,argv);\n    input_scrub_end();\n    iVar9 = had_errors();\n    if (iVar9 != 0) break;\n    print_dependencies();\n    xexit(0);\nLAB_00108bff:\n    xatexit(dump_statistics);\n  } while( true );\n  xexit(1);\n  iVar9 = strcasecmp(pcVar13,"warning");\n  if (iVar9 != 0) {\n    pcVar18 = (char *)dcgettext(0,"Invalid --size-check= option: `%s\'",5);\n                    /* WARNING: Subroutine does not return */\n    as_fatal(pcVar18,pcVar13);\n  }\n  flag_allow_nonconst_size = 1;\n  goto LAB_00107958;\n}" primitive_type (function_declarator "main(int argc,char **argv)" identifier (parameter_list "(int argc,char **argv)" ( (parameter_declaration "int argc" primitive_type identifier) , (parameter_declaration "char **argv" primitive_type (pointer_declarator "**argv" * (pointer_declarator "*argv" * identifier))) ))) (compound_statement "{\n  byte *pbVar1;\n  undefined1 (*pauVar2) [16];\n  undefined8 uVar3;\n  defsym_list *pdVar4;\n  undefined *puVar5;\n  size_t sVar6;\n  uint uVar7;\n  uint uVar8;\n  int iVar9;\n  int iVar10;\n  uint uVar11;\n  void *__ptr;\n  char **__ptr_00;\n  char **ppcVar12;\n  char *pcVar13;\n  symbolS *s;\n  segT paVar14;\n  char *format;\n  long lVar15;\n  ulong uVar16;\n  char **ppcVar17;\n  char *pcVar18;\n  undefined8 *puVar19;\n  undefined8 *puVar20;\n  char **__s;\n  byte bVar21;\n  char **local_1a8;\n  uint local_1a0;\n  uint local_19c;\n  char warn_msg [50];\n  stat sob;\n  stat sib;\n  \n  bVar21 = 0;\n  local_1a8 = argv;\n  local_19c = argc;\n  start_time = get_run_time();\n  signal_init();\n  setlocale(5,"");\n  setlocale(0,"");\n  bindtextdomain(&DAT_0013b28d,"/usr/share/locale");\n  textdomain(&DAT_0013b28d);\n  if (debug_memory != 0) {\n    chunksize = 0x40;\n  }\n  myname = *local_1a8;\n  xmalloc_set_program_name();\n  expandargv((int *)&local_19c,&local_1a8);\n  out_file_name = "a.out";\n  hex_init();\n  bfd_init();\n  bfd_set_error_program_name(myname);\n  __ptr = (void *)concat(std_shortopts_14525,md_shortopts,0);\n  __ptr_00 = (char **)xmalloc(md_longopts_size + 0x580);\n  puVar5 = std_longopts_14566;\n  __ptr_00[0xab] = DAT_0014ef18;\n  *__ptr_00 = puVar5;\n  lVar15 = (long)__ptr_00 - (long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);\n  puVar19 = (undefined8 *)((long)&std_longopts_14566 - lVar15);\n  puVar20 = (undefined8 *)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);\n  for (uVar16 = (ulong)((int)lVar15 + 0x560U >> 3); sVar6 = md_longopts_size, uVar16 != 0;\n      uVar16 = uVar16 - 1) {\n    *puVar20 = *puVar19;\n    puVar19 = puVar19 + (ulong)bVar21 * -2 + 1;\n    puVar20 = puVar20 + (ulong)bVar21 * -2 + 1;\n  }\n  memcpy(__ptr_00 + 0xac,md_longopts,md_longopts_size);\n  uVar7 = local_19c;\n  __s = local_1a8;\n  pauVar2 = (undefined1 (*) [16])((long)__ptr_00 + sVar6 + 0x560);\n  *pauVar2 = (undefined1  [16])0x0;\n  ppcVar17 = (char **)&DAT_0013cb10;\n  pauVar2[1] = (undefined1  [16])0x0;\n  ppcVar12 = (char **)xmalloc((long)(int)(local_19c + 1) << 3);\n  local_1a0 = 1;\n  pcVar13 = *__s;\n  ppcVar12[1] = (char *)0x0;\n  *ppcVar12 = pcVar13;\nLAB_00107958:\n  while( true ) {\n    uVar8 = getopt_long_only(uVar7,__s,__ptr,__ptr_00,&sib);\n    pcVar13 = (char *)(ulong)uVar8;\n    if (uVar8 == 0xffffffff) break;\n    if (uVar8 < 0xba) {\n                    /* WARNING: Could not recover jumptable at 0x00107989. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      iVar9 = (*(code *)((long)*(int *)((long)ppcVar17 + (ulong)uVar8 * 4) + (long)ppcVar17))();\n      return iVar9;\n    }\n    iVar9 = md_parse_option(uVar8,optarg);\n    if (iVar9 == 0) {\n      if (uVar8 != 0x76) {\n        pcVar18 = optarg;\n        if (optarg == (char *)0x0) {\n          pcVar18 = "";\n        }\n        format = (char *)dcgettext(0,"unrecognized option -%c%s",5);\n        as_bad(format,pcVar13,pcVar18);\n                    /* WARNING: Subroutine does not return */\n        exit(1);\n      }\n      if (printed_14511 == 0) {\n        print_version_id();\n      }\n      verbose = 1;\n    }\n  }\n  free(__ptr);\n  free(__ptr_00);\n  local_19c = local_1a0;\n  local_1a8 = ppcVar12;\n  riscv_after_parse_args();\n  if (((1 < (int)local_19c) && (iVar9 = __xstat(1,out_file_name,(stat *)&sob), iVar9 == 0)) &&\n     (1 < (int)local_19c)) {\n    lVar15 = 8;\n    iVar9 = 1;\n    do {\n      iVar10 = __xstat(1,*(char **)((long)local_1a8 + lVar15),(stat *)&sib);\n      pcVar18 = out_file_name;\n      if (((iVar10 == 0) && (sob.st_ino == sib.st_ino)) &&\n         ((sib.st_ino != 0 && (sib.st_dev == sob.st_dev)))) {\n        out_file_name = (char *)0x0;\n        uVar3 = *(undefined8 *)((long)local_1a8 + lVar15);\n        pcVar13 = (char *)dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    /* WARNING: Subroutine does not return */\n        as_fatal(pcVar13,uVar3,pcVar18);\n      }\n      iVar9 = iVar9 + 1;\n      lVar15 = lVar15 + 8;\n    } while (iVar9 < (int)local_19c);\n  }\n  symbol_begin();\n  frag_init();\n  subsegs_begin();\n  read_begin();\n  input_scrub_begin();\n  expr_begin();\n  xatexit(close_output_file);\n  if (flag_print_statistics != '\0') goto LAB_00108bff;\n  do {\n    macro_init(flag_macro_alternate,flag_mri,0,macro_expr);\n    output_file_create(out_file_name);\n    if (stdoutput == (bfd *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      as_abort("../../gas/as.c",0x519,"main");\n    }\n    dot_symbol_init();\n    dwarf2_init();\n    local_symbol_make(".gasversion.",(segT)(_bfd_std_section + 0x230),0x5a3d,\n                      &predefined_address_frag);\n    __ptr_00 = local_1a8;\n    uVar8 = local_19c;\n    while (local_1a8 = __ptr_00, local_19c = uVar8, defsyms != (defsym_list *)0x0) {\n      s = symbol_new(defsyms->name,(segT)(_bfd_std_section + 0x230),defsyms->value,\n                     &zero_address_frag);\n      S_SET_VOLATILE(s);\n      symbol_table_insert(s);\n      pdVar4 = defsyms->next;\n      free(defsyms);\n      defsyms = pdVar4;\n      __ptr_00 = local_1a8;\n      uVar8 = local_19c;\n    }\n    __s = (char **)(ulong)uVar8;\n    need_pass_2 = 0;\n    text_section = subseg_new(".text",0);\n    data_section = subseg_new(".data",0);\n    bss_section = subseg_new(".bss",0);\n    uVar11 = stdoutput->xvec->section_flags;\n    bfd_set_section_flags(stdoutput,text_section,uVar11 & 0x1f);\n    bfd_set_section_flags(stdoutput,data_section,uVar11 & 0x27);\n    ppcVar17 = __ptr_00 + 1;\n    bfd_set_section_flags(stdoutput,bss_section,uVar11 & 1);\n    pbVar1 = (byte *)((long)bss_section->userdata + 8);\n    *pbVar1 = *pbVar1 | 2;\n    subseg_new("*ABS*",0);\n    subseg_new("*UND*",0);\n    reg_section = subseg_new("*GAS `reg\' section*",0);\n    expr_section = subseg_new("*GAS `expr\' section*",0);\n    subseg_set(text_section,0);\n    md_begin();\n    elf_begin();\n    if (uVar8 == 1) {\nLAB_00108d46:\n      read_a_source_file("");\n    }\n    else {\n      __s = __ptr_00 + (ulong)(uVar8 - 2) + 2;\n      __ptr_00 = (char **)0x0;\n      do {\n        if (*ppcVar17 != (char *)0x0) {\n          __ptr_00 = (char **)(ulong)((int)__ptr_00 + 1);\n          read_a_source_file(*ppcVar17);\n        }\n        ppcVar17 = ppcVar17 + 1;\n      } while (ppcVar17 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }\n    cond_finish_check(-1);\n    if (flag_execstack != 0 || flag_noexecstack != 0) {\n      paVar14 = subseg_new(".note.GNU-stack",0);\n      bfd_set_section_flags(stdoutput,paVar14,(-(uint)(flag_execstack == 0) & 0xfffffff0) + 0x18);\n    }\n    dwarf2_finish();\n    cfi_finish();\n    keep_it = 0;\n    iVar9 = seen_at_least_1_file();\n    if (iVar9 != 0) {\n      write_object_file();\n      __s = (char **)warn_msg;\n      uVar8 = had_warnings();\n      __ptr_00 = (char **)(ulong)uVar8;\n      uVar11 = had_errors();\n      ppcVar17 = (char **)(ulong)uVar11;\n      pcVar18 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar8,5);\n      sprintf((char *)__s,pcVar18,(ulong)uVar8);\n      pcVar18 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar11,5);\n      sprintf((char *)&sib,pcVar18,(ulong)uVar11);\n      if ((flag_fatal_warnings != 0) && (uVar8 != 0)) {\n        if (uVar11 == 0) {\n          ppcVar17 = (char **)(ulong)uVar8;\n          pcVar18 = (char *)dcgettext(0,"%s, treating warnings as errors",5);\n          as_bad(pcVar18,__s);\n        }\n        else {\n          ppcVar17 = (char **)(ulong)(uVar11 + uVar8);\n        }\n      }\n      if ((int)ppcVar17 == 0) {\n        keep_it = 1;\n      }\n      else if (flag_always_generate_output != '\0') {\n        keep_it = 1;\n        pcVar18 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar18,&sib,__s);\n      }\n    }\n    fflush(stderr);\n    listing_print(listing_filename,argv);\n    input_scrub_end();\n    iVar9 = had_errors();\n    if (iVar9 != 0) break;\n    print_dependencies();\n    xexit(0);\nLAB_00108bff:\n    xatexit(dump_statistics);\n  } while( true );\n  xexit(1);\n  iVar9 = strcasecmp(pcVar13,"warning");\n  if (iVar9 != 0) {\n    pcVar18 = (char *)dcgettext(0,"Invalid --size-check= option: `%s\'",5);\n                    /* WARNING: Subroutine does not return */\n    as_fatal(pcVar18,pcVar13);\n  }\n  flag_allow_nonconst_size = 1;\n  goto LAB_00107958;\n}" { (declaration "byte *pbVar1;" type_identifier (pointer_declarator "*pbVar1" * identifier) ;) (expression_statement "undefined1 (*pauVar2) [16];" (subscript_expression "undefined1 (*pauVar2) [16]" (call_expression "undefined1 (*pauVar2)" identifier (argument_list "(*pauVar2)" ( (pointer_expression "*pauVar2" * identifier) ))) [ number_literal ]) ;) (declaration "undefined8 uVar3;" type_identifier identifier ;) (declaration "defsym_list *pdVar4;" type_identifier (pointer_declarator "*pdVar4" * identifier) ;) (declaration "undefined *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "size_t sVar6;" primitive_type identifier ;) (declaration "uint uVar7;" type_identifier identifier ;) (declaration "uint uVar8;" type_identifier identifier ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "uint uVar11;" type_identifier identifier ;) (declaration "void *__ptr;" primitive_type (pointer_declarator "*__ptr" * identifier) ;) (declaration "char **__ptr_00;" primitive_type (pointer_declarator "**__ptr_00" * (pointer_declarator "*__ptr_00" * identifier)) ;) (declaration "char **ppcVar12;" primitive_type (pointer_declarator "**ppcVar12" * (pointer_declarator "*ppcVar12" * identifier)) ;) (declaration "char *pcVar13;" primitive_type (pointer_declarator "*pcVar13" * identifier) ;) (declaration "symbolS *s;" type_identifier (pointer_declarator "*s" * identifier) ;) (declaration "segT paVar14;" type_identifier identifier ;) (declaration "char *format;" primitive_type (pointer_declarator "*format" * identifier) ;) (declaration "long lVar15;" (sized_type_specifier "long" long) identifier ;) (declaration "ulong uVar16;" type_identifier identifier ;) (declaration "char **ppcVar17;" primitive_type (pointer_declarator "**ppcVar17" * (pointer_declarator "*ppcVar17" * identifier)) ;) (declaration "char *pcVar18;" primitive_type (pointer_declarator "*pcVar18" * identifier) ;) (declaration "undefined8 *puVar19;" type_identifier (pointer_declarator "*puVar19" * identifier) ;) (declaration "undefined8 *puVar20;" type_identifier (pointer_declarator "*puVar20" * identifier) ;) (declaration "char **__s;" primitive_type (pointer_declarator "**__s" * (pointer_declarator "*__s" * identifier)) ;) (declaration "byte bVar21;" type_identifier identifier ;) (declaration "char **local_1a8;" primitive_type (pointer_declarator "**local_1a8" * (pointer_declarator "*local_1a8" * identifier)) ;) (declaration "uint local_1a0;" type_identifier identifier ;) (declaration "uint local_19c;" type_identifier identifier ;) (declaration "char warn_msg [50];" primitive_type (array_declarator "warn_msg [50]" identifier [ number_literal ]) ;) (declaration "stat sob;" type_identifier identifier ;) (declaration "stat sib;" type_identifier identifier ;) (expression_statement "bVar21 = 0;" (assignment_expression "bVar21 = 0" identifier = number_literal) ;) (expression_statement "local_1a8 = argv;" (assignment_expression "local_1a8 = argv" identifier = identifier) ;) (expression_statement "local_19c = argc;" (assignment_expression "local_19c = argc" identifier = identifier) ;) (expression_statement "start_time = get_run_time();" (assignment_expression "start_time = get_run_time()" identifier = (call_expression "get_run_time()" identifier (argument_list "()" ( )))) ;) (expression_statement "signal_init();" (call_expression "signal_init()" identifier (argument_list "()" ( ))) ;) (expression_statement "setlocale(5,"");" (call_expression "setlocale(5,"")" identifier (argument_list "(5,"")" ( number_literal , (string_literal """" " ") ))) ;) (expression_statement "setlocale(0,"");" (call_expression "setlocale(0,"")" identifier (argument_list "(0,"")" ( number_literal , (string_literal """" " ") ))) ;) (expression_statement "bindtextdomain(&DAT_0013b28d,"/usr/share/locale");" (call_expression "bindtextdomain(&DAT_0013b28d,"/usr/share/locale")" identifier (argument_list "(&DAT_0013b28d,"/usr/share/locale")" ( (pointer_expression "&DAT_0013b28d" & identifier) , (string_literal ""/usr/share/locale"" " string_content ") ))) ;) (expression_statement "textdomain(&DAT_0013b28d);" (call_expression "textdomain(&DAT_0013b28d)" identifier (argument_list "(&DAT_0013b28d)" ( (pointer_expression "&DAT_0013b28d" & identifier) ))) ;) (if_statement "if (debug_memory != 0) {\n    chunksize = 0x40;\n  }" if (parenthesized_expression "(debug_memory != 0)" ( (binary_expression "debug_memory != 0" identifier != number_literal) )) (compound_statement "{\n    chunksize = 0x40;\n  }" { (expression_statement "chunksize = 0x40;" (assignment_expression "chunksize = 0x40" identifier = number_literal) ;) })) (expression_statement "myname = *local_1a8;" (assignment_expression "myname = *local_1a8" identifier = (pointer_expression "*local_1a8" * identifier)) ;) (expression_statement "xmalloc_set_program_name();" (call_expression "xmalloc_set_program_name()" identifier (argument_list "()" ( ))) ;) (expression_statement "expandargv((int *)&local_19c,&local_1a8);" (call_expression "expandargv((int *)&local_19c,&local_1a8)" identifier (argument_list "((int *)&local_19c,&local_1a8)" ( (cast_expression "(int *)&local_19c" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_19c" & identifier)) , (pointer_expression "&local_1a8" & identifier) ))) ;) (expression_statement "out_file_name = "a.out";" (assignment_expression "out_file_name = "a.out"" identifier = (string_literal ""a.out"" " string_content ")) ;) (expression_statement "hex_init();" (call_expression "hex_init()" identifier (argument_list "()" ( ))) ;) (expression_statement "bfd_init();" (call_expression "bfd_init()" identifier (argument_list "()" ( ))) ;) (expression_statement "bfd_set_error_program_name(myname);" (call_expression "bfd_set_error_program_name(myname)" identifier (argument_list "(myname)" ( identifier ))) ;) (expression_statement "__ptr = (void *)concat(std_shortopts_14525,md_shortopts,0);" (assignment_expression "__ptr = (void *)concat(std_shortopts_14525,md_shortopts,0)" identifier = (cast_expression "(void *)concat(std_shortopts_14525,md_shortopts,0)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "concat(std_shortopts_14525,md_shortopts,0)" identifier (argument_list "(std_shortopts_14525,md_shortopts,0)" ( identifier , identifier , number_literal ))))) ;) (expression_statement "__ptr_00 = (char **)xmalloc(md_longopts_size + 0x580);" (assignment_expression "__ptr_00 = (char **)xmalloc(md_longopts_size + 0x580)" identifier = (cast_expression "(char **)xmalloc(md_longopts_size + 0x580)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "xmalloc(md_longopts_size + 0x580)" identifier (argument_list "(md_longopts_size + 0x580)" ( (binary_expression "md_longopts_size + 0x580" identifier + number_literal) ))))) ;) (expression_statement "puVar5 = std_longopts_14566;" (assignment_expression "puVar5 = std_longopts_14566" identifier = identifier) ;) (expression_statement "__ptr_00[0xab] = DAT_0014ef18;" (assignment_expression "__ptr_00[0xab] = DAT_0014ef18" (subscript_expression "__ptr_00[0xab]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*__ptr_00 = puVar5;" (assignment_expression "*__ptr_00 = puVar5" (pointer_expression "*__ptr_00" * identifier) = identifier) ;) (expression_statement "lVar15 = (long)__ptr_00 - (long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);" (assignment_expression "lVar15 = (long)__ptr_00 - (long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" identifier = (binary_expression "(long)__ptr_00 - (long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" (cast_expression "(long)__ptr_00" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (parenthesized_expression "((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" ( (binary_expression "(ulong)(__ptr_00 + 1) & 0xfffffffffffffff8" (call_expression "(ulong)(__ptr_00 + 1)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(__ptr_00 + 1)" ( (binary_expression "__ptr_00 + 1" identifier + number_literal) ))) & number_literal) ))))) ;) (expression_statement "puVar19 = (undefined8 *)((long)&std_longopts_14566 - lVar15);" (assignment_expression "puVar19 = (undefined8 *)((long)&std_longopts_14566 - lVar15)" identifier = (cast_expression "(undefined8 *)((long)&std_longopts_14566 - lVar15)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&std_longopts_14566 - lVar15)" ( (binary_expression "(long)&std_longopts_14566 - lVar15" (cast_expression "(long)&std_longopts_14566" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&std_longopts_14566" & identifier)) - identifier) )))) ;) (expression_statement "puVar20 = (undefined8 *)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);" (assignment_expression "puVar20 = (undefined8 *)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" identifier = (cast_expression "(undefined8 *)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" ( (binary_expression "(ulong)(__ptr_00 + 1) & 0xfffffffffffffff8" (call_expression "(ulong)(__ptr_00 + 1)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(__ptr_00 + 1)" ( (binary_expression "__ptr_00 + 1" identifier + number_literal) ))) & number_literal) )))) ;) (for_statement "for (uVar16 = (ulong)((int)lVar15 + 0x560U >> 3); sVar6 = md_longopts_size, uVar16 != 0;\n      uVar16 = uVar16 - 1) {\n    *puVar20 = *puVar19;\n    puVar19 = puVar19 + (ulong)bVar21 * -2 + 1;\n    puVar20 = puVar20 + (ulong)bVar21 * -2 + 1;\n  }" for ( (assignment_expression "uVar16 = (ulong)((int)lVar15 + 0x560U >> 3)" identifier = (call_expression "(ulong)((int)lVar15 + 0x560U >> 3)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "((int)lVar15 + 0x560U >> 3)" ( (binary_expression "(int)lVar15 + 0x560U >> 3" (binary_expression "(int)lVar15 + 0x560U" (cast_expression "(int)lVar15" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) >> number_literal) )))) ; (comma_expression "sVar6 = md_longopts_size, uVar16 != 0" (assignment_expression "sVar6 = md_longopts_size" identifier = identifier) , (binary_expression "uVar16 != 0" identifier != number_literal)) ; (assignment_expression "uVar16 = uVar16 - 1" identifier = (binary_expression "uVar16 - 1" identifier - number_literal)) ) (compound_statement "{\n    *puVar20 = *puVar19;\n    puVar19 = puVar19 + (ulong)bVar21 * -2 + 1;\n    puVar20 = puVar20 + (ulong)bVar21 * -2 + 1;\n  }" { (expression_statement "*puVar20 = *puVar19;" (assignment_expression "*puVar20 = *puVar19" (pointer_expression "*puVar20" * identifier) = (pointer_expression "*puVar19" * identifier)) ;) (expression_statement "puVar19 = puVar19 + (ulong)bVar21 * -2 + 1;" (assignment_expression "puVar19 = puVar19 + (ulong)bVar21 * -2 + 1" identifier = (binary_expression "puVar19 + (ulong)bVar21 * -2 + 1" (binary_expression "puVar19 + (ulong)bVar21 * -2" identifier + (binary_expression "(ulong)bVar21 * -2" (cast_expression "(ulong)bVar21" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "puVar20 = puVar20 + (ulong)bVar21 * -2 + 1;" (assignment_expression "puVar20 = puVar20 + (ulong)bVar21 * -2 + 1" identifier = (binary_expression "puVar20 + (ulong)bVar21 * -2 + 1" (binary_expression "puVar20 + (ulong)bVar21 * -2" identifier + (binary_expression "(ulong)bVar21 * -2" (cast_expression "(ulong)bVar21" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) })) (expression_statement "memcpy(__ptr_00 + 0xac,md_longopts,md_longopts_size);" (call_expression "memcpy(__ptr_00 + 0xac,md_longopts,md_longopts_size)" identifier (argument_list "(__ptr_00 + 0xac,md_longopts,md_longopts_size)" ( (binary_expression "__ptr_00 + 0xac" identifier + number_literal) , identifier , identifier ))) ;) (expression_statement "uVar7 = local_19c;" (assignment_expression "uVar7 = local_19c" identifier = identifier) ;) (expression_statement "__s = local_1a8;" (assignment_expression "__s = local_1a8" identifier = identifier) ;) (expression_statement "pauVar2 = (undefined1 (*) [16])((long)__ptr_00 + sVar6 + 0x560);" (assignment_expression "pauVar2 = (undefined1 (*) [16])((long)__ptr_00 + sVar6 + 0x560)" identifier = (cast_expression "(undefined1 (*) [16])((long)__ptr_00 + sVar6 + 0x560)" ( (type_descriptor "undefined1 (*) [16]" type_identifier (abstract_array_declarator "(*) [16]" (abstract_parenthesized_declarator "(*)" ( (abstract_pointer_declarator "*" *) )) [ number_literal ])) ) (parenthesized_expression "((long)__ptr_00 + sVar6 + 0x560)" ( (binary_expression "(long)__ptr_00 + sVar6 + 0x560" (binary_expression "(long)__ptr_00 + sVar6" (cast_expression "(long)__ptr_00" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) + number_literal) )))) ;) (expression_statement "*pauVar2 = (undefined1  [16])0x0;" (assignment_expression "*pauVar2 = (undefined1  [16])0x0" (pointer_expression "*pauVar2" * identifier) = (cast_expression "(undefined1  [16])0x0" ( (type_descriptor "undefined1  [16]" type_identifier (abstract_array_declarator "[16]" [ number_literal ])) ) number_literal)) ;) (expression_statement "ppcVar17 = (char **)&DAT_0013cb10;" (assignment_expression "ppcVar17 = (char **)&DAT_0013cb10" identifier = (cast_expression "(char **)&DAT_0013cb10" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&DAT_0013cb10" & identifier))) ;) (expression_statement "pauVar2[1] = (undefined1  [16])0x0;" (assignment_expression "pauVar2[1] = (undefined1  [16])0x0" (subscript_expression "pauVar2[1]" identifier [ number_literal ]) = (cast_expression "(undefined1  [16])0x0" ( (type_descriptor "undefined1  [16]" type_identifier (abstract_array_declarator "[16]" [ number_literal ])) ) number_literal)) ;) (expression_statement "ppcVar12 = (char **)xmalloc((long)(int)(local_19c + 1) << 3);" (assignment_expression "ppcVar12 = (char **)xmalloc((long)(int)(local_19c + 1) << 3)" identifier = (cast_expression "(char **)xmalloc((long)(int)(local_19c + 1) << 3)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "xmalloc((long)(int)(local_19c + 1) << 3)" identifier (argument_list "((long)(int)(local_19c + 1) << 3)" ( (binary_expression "(long)(int)(local_19c + 1) << 3" (cast_expression "(long)(int)(local_19c + 1)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)(local_19c + 1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(local_19c + 1)" ( (binary_expression "local_19c + 1" identifier + number_literal) )))) << number_literal) ))))) ;) (expression_statement "local_1a0 = 1;" (assignment_expression "local_1a0 = 1" identifier = number_literal) ;) (expression_statement "pcVar13 = *__s;" (assignment_expression "pcVar13 = *__s" identifier = (pointer_expression "*__s" * identifier)) ;) (expression_statement "ppcVar12[1] = (char *)0x0;" (assignment_expression "ppcVar12[1] = (char *)0x0" (subscript_expression "ppcVar12[1]" identifier [ number_literal ]) = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "*ppcVar12 = pcVar13;" (assignment_expression "*ppcVar12 = pcVar13" (pointer_expression "*ppcVar12" * identifier) = identifier) ;) (labeled_statement "LAB_00107958:\n  while( true ) {\n    uVar8 = getopt_long_only(uVar7,__s,__ptr,__ptr_00,&sib);\n    pcVar13 = (char *)(ulong)uVar8;\n    if (uVar8 == 0xffffffff) break;\n    if (uVar8 < 0xba) {\n                    /* WARNING: Could not recover jumptable at 0x00107989. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      iVar9 = (*(code *)((long)*(int *)((long)ppcVar17 + (ulong)uVar8 * 4) + (long)ppcVar17))();\n      return iVar9;\n    }\n    iVar9 = md_parse_option(uVar8,optarg);\n    if (iVar9 == 0) {\n      if (uVar8 != 0x76) {\n        pcVar18 = optarg;\n        if (optarg == (char *)0x0) {\n          pcVar18 = "";\n        }\n        format = (char *)dcgettext(0,"unrecognized option -%c%s",5);\n        as_bad(format,pcVar13,pcVar18);\n                    /* WARNING: Subroutine does not return */\n        exit(1);\n      }\n      if (printed_14511 == 0) {\n        print_version_id();\n      }\n      verbose = 1;\n    }\n  }" statement_identifier : (while_statement "while( true ) {\n    uVar8 = getopt_long_only(uVar7,__s,__ptr,__ptr_00,&sib);\n    pcVar13 = (char *)(ulong)uVar8;\n    if (uVar8 == 0xffffffff) break;\n    if (uVar8 < 0xba) {\n                    /* WARNING: Could not recover jumptable at 0x00107989. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      iVar9 = (*(code *)((long)*(int *)((long)ppcVar17 + (ulong)uVar8 * 4) + (long)ppcVar17))();\n      return iVar9;\n    }\n    iVar9 = md_parse_option(uVar8,optarg);\n    if (iVar9 == 0) {\n      if (uVar8 != 0x76) {\n        pcVar18 = optarg;\n        if (optarg == (char *)0x0) {\n          pcVar18 = "";\n        }\n        format = (char *)dcgettext(0,"unrecognized option -%c%s",5);\n        as_bad(format,pcVar13,pcVar18);\n                    /* WARNING: Subroutine does not return */\n        exit(1);\n      }\n      if (printed_14511 == 0) {\n        print_version_id();\n      }\n      verbose = 1;\n    }\n  }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n    uVar8 = getopt_long_only(uVar7,__s,__ptr,__ptr_00,&sib);\n    pcVar13 = (char *)(ulong)uVar8;\n    if (uVar8 == 0xffffffff) break;\n    if (uVar8 < 0xba) {\n                    /* WARNING: Could not recover jumptable at 0x00107989. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      iVar9 = (*(code *)((long)*(int *)((long)ppcVar17 + (ulong)uVar8 * 4) + (long)ppcVar17))();\n      return iVar9;\n    }\n    iVar9 = md_parse_option(uVar8,optarg);\n    if (iVar9 == 0) {\n      if (uVar8 != 0x76) {\n        pcVar18 = optarg;\n        if (optarg == (char *)0x0) {\n          pcVar18 = "";\n        }\n        format = (char *)dcgettext(0,"unrecognized option -%c%s",5);\n        as_bad(format,pcVar13,pcVar18);\n                    /* WARNING: Subroutine does not return */\n        exit(1);\n      }\n      if (printed_14511 == 0) {\n        print_version_id();\n      }\n      verbose = 1;\n    }\n  }" { (expression_statement "uVar8 = getopt_long_only(uVar7,__s,__ptr,__ptr_00,&sib);" (assignment_expression "uVar8 = getopt_long_only(uVar7,__s,__ptr,__ptr_00,&sib)" identifier = (call_expression "getopt_long_only(uVar7,__s,__ptr,__ptr_00,&sib)" identifier (argument_list "(uVar7,__s,__ptr,__ptr_00,&sib)" ( identifier , identifier , identifier , identifier , (pointer_expression "&sib" & identifier) )))) ;) (expression_statement "pcVar13 = (char *)(ulong)uVar8;" (assignment_expression "pcVar13 = (char *)(ulong)uVar8" identifier = (cast_expression "(char *)(ulong)uVar8" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (cast_expression "(ulong)uVar8" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (if_statement "if (uVar8 == 0xffffffff) break;" if (parenthesized_expression "(uVar8 == 0xffffffff)" ( (binary_expression "uVar8 == 0xffffffff" identifier == number_literal) )) (break_statement "break;" break ;)) (if_statement "if (uVar8 < 0xba) {\n                    /* WARNING: Could not recover jumptable at 0x00107989. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      iVar9 = (*(code *)((long)*(int *)((long)ppcVar17 + (ulong)uVar8 * 4) + (long)ppcVar17))();\n      return iVar9;\n    }" if (parenthesized_expression "(uVar8 < 0xba)" ( (binary_expression "uVar8 < 0xba" identifier < number_literal) )) (compound_statement "{\n                    /* WARNING: Could not recover jumptable at 0x00107989. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      iVar9 = (*(code *)((long)*(int *)((long)ppcVar17 + (ulong)uVar8 * 4) + (long)ppcVar17))();\n      return iVar9;\n    }" { comment comment (expression_statement "iVar9 = (*(code *)((long)*(int *)((long)ppcVar17 + (ulong)uVar8 * 4) + (long)ppcVar17))();" (assignment_expression "iVar9 = (*(code *)((long)*(int *)((long)ppcVar17 + (ulong)uVar8 * 4) + (long)ppcVar17))()" identifier = (call_expression "(*(code *)((long)*(int *)((long)ppcVar17 + (ulong)uVar8 * 4) + (long)ppcVar17))()" (parenthesized_expression "(*(code *)((long)*(int *)((long)ppcVar17 + (ulong)uVar8 * 4) + (long)ppcVar17))" ( (pointer_expression "*(code *)((long)*(int *)((long)ppcVar17 + (ulong)uVar8 * 4) + (long)ppcVar17)" * (cast_expression "(code *)((long)*(int *)((long)ppcVar17 + (ulong)uVar8 * 4) + (long)ppcVar17)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)*(int *)((long)ppcVar17 + (ulong)uVar8 * 4) + (long)ppcVar17)" ( (binary_expression "(long)*(int *)((long)ppcVar17 + (ulong)uVar8 * 4) + (long)ppcVar17" (cast_expression "(long)*(int *)((long)ppcVar17 + (ulong)uVar8 * 4)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "*(int *)((long)ppcVar17 + (ulong)uVar8 * 4)" * (cast_expression "(int *)((long)ppcVar17 + (ulong)uVar8 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)ppcVar17 + (ulong)uVar8 * 4)" ( (binary_expression "(long)ppcVar17 + (ulong)uVar8 * 4" (cast_expression "(long)ppcVar17" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (binary_expression "(ulong)uVar8 * 4" (cast_expression "(ulong)uVar8" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) ))))) + (cast_expression "(long)ppcVar17" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) )) (argument_list "()" ( )))) ;) (return_statement "return iVar9;" return identifier ;) })) (expression_statement "iVar9 = md_parse_option(uVar8,optarg);" (assignment_expression "iVar9 = md_parse_option(uVar8,optarg)" identifier = (call_expression "md_parse_option(uVar8,optarg)" identifier (argument_list "(uVar8,optarg)" ( identifier , identifier )))) ;) (if_statement "if (iVar9 == 0) {\n      if (uVar8 != 0x76) {\n        pcVar18 = optarg;\n        if (optarg == (char *)0x0) {\n          pcVar18 = "";\n        }\n        format = (char *)dcgettext(0,"unrecognized option -%c%s",5);\n        as_bad(format,pcVar13,pcVar18);\n                    /* WARNING: Subroutine does not return */\n        exit(1);\n      }\n      if (printed_14511 == 0) {\n        print_version_id();\n      }\n      verbose = 1;\n    }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n      if (uVar8 != 0x76) {\n        pcVar18 = optarg;\n        if (optarg == (char *)0x0) {\n          pcVar18 = "";\n        }\n        format = (char *)dcgettext(0,"unrecognized option -%c%s",5);\n        as_bad(format,pcVar13,pcVar18);\n                    /* WARNING: Subroutine does not return */\n        exit(1);\n      }\n      if (printed_14511 == 0) {\n        print_version_id();\n      }\n      verbose = 1;\n    }" { (if_statement "if (uVar8 != 0x76) {\n        pcVar18 = optarg;\n        if (optarg == (char *)0x0) {\n          pcVar18 = "";\n        }\n        format = (char *)dcgettext(0,"unrecognized option -%c%s",5);\n        as_bad(format,pcVar13,pcVar18);\n                    /* WARNING: Subroutine does not return */\n        exit(1);\n      }" if (parenthesized_expression "(uVar8 != 0x76)" ( (binary_expression "uVar8 != 0x76" identifier != number_literal) )) (compound_statement "{\n        pcVar18 = optarg;\n        if (optarg == (char *)0x0) {\n          pcVar18 = "";\n        }\n        format = (char *)dcgettext(0,"unrecognized option -%c%s",5);\n        as_bad(format,pcVar13,pcVar18);\n                    /* WARNING: Subroutine does not return */\n        exit(1);\n      }" { (expression_statement "pcVar18 = optarg;" (assignment_expression "pcVar18 = optarg" identifier = identifier) ;) (if_statement "if (optarg == (char *)0x0) {\n          pcVar18 = "";\n        }" if (parenthesized_expression "(optarg == (char *)0x0)" ( (binary_expression "optarg == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          pcVar18 = "";\n        }" { (expression_statement "pcVar18 = "";" (assignment_expression "pcVar18 = """ identifier = (string_literal """" " ")) ;) })) (expression_statement "format = (char *)dcgettext(0,"unrecognized option -%c%s",5);" (assignment_expression "format = (char *)dcgettext(0,"unrecognized option -%c%s",5)" identifier = (cast_expression "(char *)dcgettext(0,"unrecognized option -%c%s",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"unrecognized option -%c%s",5)" identifier (argument_list "(0,"unrecognized option -%c%s",5)" ( number_literal , (string_literal ""unrecognized option -%c%s"" " string_content ") , number_literal ))))) ;) (expression_statement "as_bad(format,pcVar13,pcVar18);" (call_expression "as_bad(format,pcVar13,pcVar18)" identifier (argument_list "(format,pcVar13,pcVar18)" ( identifier , identifier , identifier ))) ;) comment (expression_statement "exit(1);" (call_expression "exit(1)" identifier (argument_list "(1)" ( number_literal ))) ;) })) (if_statement "if (printed_14511 == 0) {\n        print_version_id();\n      }" if (parenthesized_expression "(printed_14511 == 0)" ( (binary_expression "printed_14511 == 0" identifier == number_literal) )) (compound_statement "{\n        print_version_id();\n      }" { (expression_statement "print_version_id();" (call_expression "print_version_id()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "verbose = 1;" (assignment_expression "verbose = 1" identifier = number_literal) ;) })) }))) (expression_statement "free(__ptr);" (call_expression "free(__ptr)" identifier (argument_list "(__ptr)" ( identifier ))) ;) (expression_statement "free(__ptr_00);" (call_expression "free(__ptr_00)" identifier (argument_list "(__ptr_00)" ( identifier ))) ;) (expression_statement "local_19c = local_1a0;" (assignment_expression "local_19c = local_1a0" identifier = identifier) ;) (expression_statement "local_1a8 = ppcVar12;" (assignment_expression "local_1a8 = ppcVar12" identifier = identifier) ;) (expression_statement "riscv_after_parse_args();" (call_expression "riscv_after_parse_args()" identifier (argument_list "()" ( ))) ;) (if_statement "if (((1 < (int)local_19c) && (iVar9 = __xstat(1,out_file_name,(stat *)&sob), iVar9 == 0)) &&\n     (1 < (int)local_19c)) {\n    lVar15 = 8;\n    iVar9 = 1;\n    do {\n      iVar10 = __xstat(1,*(char **)((long)local_1a8 + lVar15),(stat *)&sib);\n      pcVar18 = out_file_name;\n      if (((iVar10 == 0) && (sob.st_ino == sib.st_ino)) &&\n         ((sib.st_ino != 0 && (sib.st_dev == sob.st_dev)))) {\n        out_file_name = (char *)0x0;\n        uVar3 = *(undefined8 *)((long)local_1a8 + lVar15);\n        pcVar13 = (char *)dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    /* WARNING: Subroutine does not return */\n        as_fatal(pcVar13,uVar3,pcVar18);\n      }\n      iVar9 = iVar9 + 1;\n      lVar15 = lVar15 + 8;\n    } while (iVar9 < (int)local_19c);\n  }" if (parenthesized_expression "(((1 < (int)local_19c) && (iVar9 = __xstat(1,out_file_name,(stat *)&sob), iVar9 == 0)) &&\n     (1 < (int)local_19c))" ( (binary_expression "((1 < (int)local_19c) && (iVar9 = __xstat(1,out_file_name,(stat *)&sob), iVar9 == 0)) &&\n     (1 < (int)local_19c)" (parenthesized_expression "((1 < (int)local_19c) && (iVar9 = __xstat(1,out_file_name,(stat *)&sob), iVar9 == 0))" ( (binary_expression "(1 < (int)local_19c) && (iVar9 = __xstat(1,out_file_name,(stat *)&sob), iVar9 == 0)" (parenthesized_expression "(1 < (int)local_19c)" ( (binary_expression "1 < (int)local_19c" number_literal < (cast_expression "(int)local_19c" ( (type_descriptor "int" primitive_type) ) identifier)) )) && (parenthesized_expression "(iVar9 = __xstat(1,out_file_name,(stat *)&sob), iVar9 == 0)" ( (comma_expression "iVar9 = __xstat(1,out_file_name,(stat *)&sob), iVar9 == 0" (assignment_expression "iVar9 = __xstat(1,out_file_name,(stat *)&sob)" identifier = (call_expression "__xstat(1,out_file_name,(stat *)&sob)" identifier (argument_list "(1,out_file_name,(stat *)&sob)" ( number_literal , identifier , (cast_expression "(stat *)&sob" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&sob" & identifier)) )))) , (binary_expression "iVar9 == 0" identifier == number_literal)) ))) )) && (parenthesized_expression "(1 < (int)local_19c)" ( (binary_expression "1 < (int)local_19c" number_literal < (cast_expression "(int)local_19c" ( (type_descriptor "int" primitive_type) ) identifier)) ))) )) (compound_statement "{\n    lVar15 = 8;\n    iVar9 = 1;\n    do {\n      iVar10 = __xstat(1,*(char **)((long)local_1a8 + lVar15),(stat *)&sib);\n      pcVar18 = out_file_name;\n      if (((iVar10 == 0) && (sob.st_ino == sib.st_ino)) &&\n         ((sib.st_ino != 0 && (sib.st_dev == sob.st_dev)))) {\n        out_file_name = (char *)0x0;\n        uVar3 = *(undefined8 *)((long)local_1a8 + lVar15);\n        pcVar13 = (char *)dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    /* WARNING: Subroutine does not return */\n        as_fatal(pcVar13,uVar3,pcVar18);\n      }\n      iVar9 = iVar9 + 1;\n      lVar15 = lVar15 + 8;\n    } while (iVar9 < (int)local_19c);\n  }" { (expression_statement "lVar15 = 8;" (assignment_expression "lVar15 = 8" identifier = number_literal) ;) (expression_statement "iVar9 = 1;" (assignment_expression "iVar9 = 1" identifier = number_literal) ;) (do_statement "do {\n      iVar10 = __xstat(1,*(char **)((long)local_1a8 + lVar15),(stat *)&sib);\n      pcVar18 = out_file_name;\n      if (((iVar10 == 0) && (sob.st_ino == sib.st_ino)) &&\n         ((sib.st_ino != 0 && (sib.st_dev == sob.st_dev)))) {\n        out_file_name = (char *)0x0;\n        uVar3 = *(undefined8 *)((long)local_1a8 + lVar15);\n        pcVar13 = (char *)dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    /* WARNING: Subroutine does not return */\n        as_fatal(pcVar13,uVar3,pcVar18);\n      }\n      iVar9 = iVar9 + 1;\n      lVar15 = lVar15 + 8;\n    } while (iVar9 < (int)local_19c);" do (compound_statement "{\n      iVar10 = __xstat(1,*(char **)((long)local_1a8 + lVar15),(stat *)&sib);\n      pcVar18 = out_file_name;\n      if (((iVar10 == 0) && (sob.st_ino == sib.st_ino)) &&\n         ((sib.st_ino != 0 && (sib.st_dev == sob.st_dev)))) {\n        out_file_name = (char *)0x0;\n        uVar3 = *(undefined8 *)((long)local_1a8 + lVar15);\n        pcVar13 = (char *)dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    /* WARNING: Subroutine does not return */\n        as_fatal(pcVar13,uVar3,pcVar18);\n      }\n      iVar9 = iVar9 + 1;\n      lVar15 = lVar15 + 8;\n    }" { (expression_statement "iVar10 = __xstat(1,*(char **)((long)local_1a8 + lVar15),(stat *)&sib);" (assignment_expression "iVar10 = __xstat(1,*(char **)((long)local_1a8 + lVar15),(stat *)&sib)" identifier = (call_expression "__xstat(1,*(char **)((long)local_1a8 + lVar15),(stat *)&sib)" identifier (argument_list "(1,*(char **)((long)local_1a8 + lVar15),(stat *)&sib)" ( number_literal , (pointer_expression "*(char **)((long)local_1a8 + lVar15)" * (cast_expression "(char **)((long)local_1a8 + lVar15)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((long)local_1a8 + lVar15)" ( (binary_expression "(long)local_1a8 + lVar15" (cast_expression "(long)local_1a8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) )))) , (cast_expression "(stat *)&sib" ( (type_descriptor "stat *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&sib" & identifier)) )))) ;) (expression_statement "pcVar18 = out_file_name;" (assignment_expression "pcVar18 = out_file_name" identifier = identifier) ;) (if_statement "if (((iVar10 == 0) && (sob.st_ino == sib.st_ino)) &&\n         ((sib.st_ino != 0 && (sib.st_dev == sob.st_dev)))) {\n        out_file_name = (char *)0x0;\n        uVar3 = *(undefined8 *)((long)local_1a8 + lVar15);\n        pcVar13 = (char *)dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    /* WARNING: Subroutine does not return */\n        as_fatal(pcVar13,uVar3,pcVar18);\n      }" if (parenthesized_expression "(((iVar10 == 0) && (sob.st_ino == sib.st_ino)) &&\n         ((sib.st_ino != 0 && (sib.st_dev == sob.st_dev))))" ( (binary_expression "((iVar10 == 0) && (sob.st_ino == sib.st_ino)) &&\n         ((sib.st_ino != 0 && (sib.st_dev == sob.st_dev)))" (parenthesized_expression "((iVar10 == 0) && (sob.st_ino == sib.st_ino))" ( (binary_expression "(iVar10 == 0) && (sob.st_ino == sib.st_ino)" (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) && (parenthesized_expression "(sob.st_ino == sib.st_ino)" ( (binary_expression "sob.st_ino == sib.st_ino" (field_expression "sob.st_ino" identifier . field_identifier) == (field_expression "sib.st_ino" identifier . field_identifier)) ))) )) && (parenthesized_expression "((sib.st_ino != 0 && (sib.st_dev == sob.st_dev)))" ( (parenthesized_expression "(sib.st_ino != 0 && (sib.st_dev == sob.st_dev))" ( (binary_expression "sib.st_ino != 0 && (sib.st_dev == sob.st_dev)" (binary_expression "sib.st_ino != 0" (field_expression "sib.st_ino" identifier . field_identifier) != number_literal) && (parenthesized_expression "(sib.st_dev == sob.st_dev)" ( (binary_expression "sib.st_dev == sob.st_dev" (field_expression "sib.st_dev" identifier . field_identifier) == (field_expression "sob.st_dev" identifier . field_identifier)) ))) )) ))) )) (compound_statement "{\n        out_file_name = (char *)0x0;\n        uVar3 = *(undefined8 *)((long)local_1a8 + lVar15);\n        pcVar13 = (char *)dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    /* WARNING: Subroutine does not return */\n        as_fatal(pcVar13,uVar3,pcVar18);\n      }" { (expression_statement "out_file_name = (char *)0x0;" (assignment_expression "out_file_name = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar3 = *(undefined8 *)((long)local_1a8 + lVar15);" (assignment_expression "uVar3 = *(undefined8 *)((long)local_1a8 + lVar15)" identifier = (pointer_expression "*(undefined8 *)((long)local_1a8 + lVar15)" * (cast_expression "(undefined8 *)((long)local_1a8 + lVar15)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)local_1a8 + lVar15)" ( (binary_expression "(long)local_1a8 + lVar15" (cast_expression "(long)local_1a8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) ))))) ;) (expression_statement "pcVar13 = (char *)dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);" (assignment_expression "pcVar13 = (char *)dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5)" identifier = (cast_expression "(char *)dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5)" identifier (argument_list "(0,"The input \'%s\' and output \'%s\' files are the same",5)" ( number_literal , (string_literal ""The input \'%s\' and output \'%s\' files are the same"" " string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content ") , number_literal ))))) ;) comment (expression_statement "as_fatal(pcVar13,uVar3,pcVar18);" (call_expression "as_fatal(pcVar13,uVar3,pcVar18)" identifier (argument_list "(pcVar13,uVar3,pcVar18)" ( identifier , identifier , identifier ))) ;) })) (expression_statement "iVar9 = iVar9 + 1;" (assignment_expression "iVar9 = iVar9 + 1" identifier = (binary_expression "iVar9 + 1" identifier + number_literal)) ;) (expression_statement "lVar15 = lVar15 + 8;" (assignment_expression "lVar15 = lVar15 + 8" identifier = (binary_expression "lVar15 + 8" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar9 < (int)local_19c)" ( (binary_expression "iVar9 < (int)local_19c" identifier < (cast_expression "(int)local_19c" ( (type_descriptor "int" primitive_type) ) identifier)) )) ;) })) (expression_statement "symbol_begin();" (call_expression "symbol_begin()" identifier (argument_list "()" ( ))) ;) (expression_statement "frag_init();" (call_expression "frag_init()" identifier (argument_list "()" ( ))) ;) (expression_statement "subsegs_begin();" (call_expression "subsegs_begin()" identifier (argument_list "()" ( ))) ;) (expression_statement "read_begin();" (call_expression "read_begin()" identifier (argument_list "()" ( ))) ;) (expression_statement "input_scrub_begin();" (call_expression "input_scrub_begin()" identifier (argument_list "()" ( ))) ;) (expression_statement "expr_begin();" (call_expression "expr_begin()" identifier (argument_list "()" ( ))) ;) (expression_statement "xatexit(close_output_file);" (call_expression "xatexit(close_output_file)" identifier (argument_list "(close_output_file)" ( identifier ))) ;) (if_statement "if (flag_print_statistics != '\0') goto LAB_00108bff;" if (parenthesized_expression "(flag_print_statistics != '\0')" ( (binary_expression "flag_print_statistics != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00108bff;" goto statement_identifier ;)) (do_statement "do {\n    macro_init(flag_macro_alternate,flag_mri,0,macro_expr);\n    output_file_create(out_file_name);\n    if (stdoutput == (bfd *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      as_abort("../../gas/as.c",0x519,"main");\n    }\n    dot_symbol_init();\n    dwarf2_init();\n    local_symbol_make(".gasversion.",(segT)(_bfd_std_section + 0x230),0x5a3d,\n                      &predefined_address_frag);\n    __ptr_00 = local_1a8;\n    uVar8 = local_19c;\n    while (local_1a8 = __ptr_00, local_19c = uVar8, defsyms != (defsym_list *)0x0) {\n      s = symbol_new(defsyms->name,(segT)(_bfd_std_section + 0x230),defsyms->value,\n                     &zero_address_frag);\n      S_SET_VOLATILE(s);\n      symbol_table_insert(s);\n      pdVar4 = defsyms->next;\n      free(defsyms);\n      defsyms = pdVar4;\n      __ptr_00 = local_1a8;\n      uVar8 = local_19c;\n    }\n    __s = (char **)(ulong)uVar8;\n    need_pass_2 = 0;\n    text_section = subseg_new(".text",0);\n    data_section = subseg_new(".data",0);\n    bss_section = subseg_new(".bss",0);\n    uVar11 = stdoutput->xvec->section_flags;\n    bfd_set_section_flags(stdoutput,text_section,uVar11 & 0x1f);\n    bfd_set_section_flags(stdoutput,data_section,uVar11 & 0x27);\n    ppcVar17 = __ptr_00 + 1;\n    bfd_set_section_flags(stdoutput,bss_section,uVar11 & 1);\n    pbVar1 = (byte *)((long)bss_section->userdata + 8);\n    *pbVar1 = *pbVar1 | 2;\n    subseg_new("*ABS*",0);\n    subseg_new("*UND*",0);\n    reg_section = subseg_new("*GAS `reg\' section*",0);\n    expr_section = subseg_new("*GAS `expr\' section*",0);\n    subseg_set(text_section,0);\n    md_begin();\n    elf_begin();\n    if (uVar8 == 1) {\nLAB_00108d46:\n      read_a_source_file("");\n    }\n    else {\n      __s = __ptr_00 + (ulong)(uVar8 - 2) + 2;\n      __ptr_00 = (char **)0x0;\n      do {\n        if (*ppcVar17 != (char *)0x0) {\n          __ptr_00 = (char **)(ulong)((int)__ptr_00 + 1);\n          read_a_source_file(*ppcVar17);\n        }\n        ppcVar17 = ppcVar17 + 1;\n      } while (ppcVar17 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }\n    cond_finish_check(-1);\n    if (flag_execstack != 0 || flag_noexecstack != 0) {\n      paVar14 = subseg_new(".note.GNU-stack",0);\n      bfd_set_section_flags(stdoutput,paVar14,(-(uint)(flag_execstack == 0) & 0xfffffff0) + 0x18);\n    }\n    dwarf2_finish();\n    cfi_finish();\n    keep_it = 0;\n    iVar9 = seen_at_least_1_file();\n    if (iVar9 != 0) {\n      write_object_file();\n      __s = (char **)warn_msg;\n      uVar8 = had_warnings();\n      __ptr_00 = (char **)(ulong)uVar8;\n      uVar11 = had_errors();\n      ppcVar17 = (char **)(ulong)uVar11;\n      pcVar18 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar8,5);\n      sprintf((char *)__s,pcVar18,(ulong)uVar8);\n      pcVar18 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar11,5);\n      sprintf((char *)&sib,pcVar18,(ulong)uVar11);\n      if ((flag_fatal_warnings != 0) && (uVar8 != 0)) {\n        if (uVar11 == 0) {\n          ppcVar17 = (char **)(ulong)uVar8;\n          pcVar18 = (char *)dcgettext(0,"%s, treating warnings as errors",5);\n          as_bad(pcVar18,__s);\n        }\n        else {\n          ppcVar17 = (char **)(ulong)(uVar11 + uVar8);\n        }\n      }\n      if ((int)ppcVar17 == 0) {\n        keep_it = 1;\n      }\n      else if (flag_always_generate_output != '\0') {\n        keep_it = 1;\n        pcVar18 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar18,&sib,__s);\n      }\n    }\n    fflush(stderr);\n    listing_print(listing_filename,argv);\n    input_scrub_end();\n    iVar9 = had_errors();\n    if (iVar9 != 0) break;\n    print_dependencies();\n    xexit(0);\nLAB_00108bff:\n    xatexit(dump_statistics);\n  } while( true );" do (compound_statement "{\n    macro_init(flag_macro_alternate,flag_mri,0,macro_expr);\n    output_file_create(out_file_name);\n    if (stdoutput == (bfd *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      as_abort("../../gas/as.c",0x519,"main");\n    }\n    dot_symbol_init();\n    dwarf2_init();\n    local_symbol_make(".gasversion.",(segT)(_bfd_std_section + 0x230),0x5a3d,\n                      &predefined_address_frag);\n    __ptr_00 = local_1a8;\n    uVar8 = local_19c;\n    while (local_1a8 = __ptr_00, local_19c = uVar8, defsyms != (defsym_list *)0x0) {\n      s = symbol_new(defsyms->name,(segT)(_bfd_std_section + 0x230),defsyms->value,\n                     &zero_address_frag);\n      S_SET_VOLATILE(s);\n      symbol_table_insert(s);\n      pdVar4 = defsyms->next;\n      free(defsyms);\n      defsyms = pdVar4;\n      __ptr_00 = local_1a8;\n      uVar8 = local_19c;\n    }\n    __s = (char **)(ulong)uVar8;\n    need_pass_2 = 0;\n    text_section = subseg_new(".text",0);\n    data_section = subseg_new(".data",0);\n    bss_section = subseg_new(".bss",0);\n    uVar11 = stdoutput->xvec->section_flags;\n    bfd_set_section_flags(stdoutput,text_section,uVar11 & 0x1f);\n    bfd_set_section_flags(stdoutput,data_section,uVar11 & 0x27);\n    ppcVar17 = __ptr_00 + 1;\n    bfd_set_section_flags(stdoutput,bss_section,uVar11 & 1);\n    pbVar1 = (byte *)((long)bss_section->userdata + 8);\n    *pbVar1 = *pbVar1 | 2;\n    subseg_new("*ABS*",0);\n    subseg_new("*UND*",0);\n    reg_section = subseg_new("*GAS `reg\' section*",0);\n    expr_section = subseg_new("*GAS `expr\' section*",0);\n    subseg_set(text_section,0);\n    md_begin();\n    elf_begin();\n    if (uVar8 == 1) {\nLAB_00108d46:\n      read_a_source_file("");\n    }\n    else {\n      __s = __ptr_00 + (ulong)(uVar8 - 2) + 2;\n      __ptr_00 = (char **)0x0;\n      do {\n        if (*ppcVar17 != (char *)0x0) {\n          __ptr_00 = (char **)(ulong)((int)__ptr_00 + 1);\n          read_a_source_file(*ppcVar17);\n        }\n        ppcVar17 = ppcVar17 + 1;\n      } while (ppcVar17 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }\n    cond_finish_check(-1);\n    if (flag_execstack != 0 || flag_noexecstack != 0) {\n      paVar14 = subseg_new(".note.GNU-stack",0);\n      bfd_set_section_flags(stdoutput,paVar14,(-(uint)(flag_execstack == 0) & 0xfffffff0) + 0x18);\n    }\n    dwarf2_finish();\n    cfi_finish();\n    keep_it = 0;\n    iVar9 = seen_at_least_1_file();\n    if (iVar9 != 0) {\n      write_object_file();\n      __s = (char **)warn_msg;\n      uVar8 = had_warnings();\n      __ptr_00 = (char **)(ulong)uVar8;\n      uVar11 = had_errors();\n      ppcVar17 = (char **)(ulong)uVar11;\n      pcVar18 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar8,5);\n      sprintf((char *)__s,pcVar18,(ulong)uVar8);\n      pcVar18 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar11,5);\n      sprintf((char *)&sib,pcVar18,(ulong)uVar11);\n      if ((flag_fatal_warnings != 0) && (uVar8 != 0)) {\n        if (uVar11 == 0) {\n          ppcVar17 = (char **)(ulong)uVar8;\n          pcVar18 = (char *)dcgettext(0,"%s, treating warnings as errors",5);\n          as_bad(pcVar18,__s);\n        }\n        else {\n          ppcVar17 = (char **)(ulong)(uVar11 + uVar8);\n        }\n      }\n      if ((int)ppcVar17 == 0) {\n        keep_it = 1;\n      }\n      else if (flag_always_generate_output != '\0') {\n        keep_it = 1;\n        pcVar18 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar18,&sib,__s);\n      }\n    }\n    fflush(stderr);\n    listing_print(listing_filename,argv);\n    input_scrub_end();\n    iVar9 = had_errors();\n    if (iVar9 != 0) break;\n    print_dependencies();\n    xexit(0);\nLAB_00108bff:\n    xatexit(dump_statistics);\n  }" { (expression_statement "macro_init(flag_macro_alternate,flag_mri,0,macro_expr);" (call_expression "macro_init(flag_macro_alternate,flag_mri,0,macro_expr)" identifier (argument_list "(flag_macro_alternate,flag_mri,0,macro_expr)" ( identifier , identifier , number_literal , identifier ))) ;) (expression_statement "output_file_create(out_file_name);" (call_expression "output_file_create(out_file_name)" identifier (argument_list "(out_file_name)" ( identifier ))) ;) (if_statement "if (stdoutput == (bfd *)0x0) {\n                    /* WARNING: Subroutine does not return */\n      as_abort("../../gas/as.c",0x519,"main");\n    }" if (parenthesized_expression "(stdoutput == (bfd *)0x0)" ( (binary_expression "stdoutput == (bfd *)0x0" identifier == (cast_expression "(bfd *)0x0" ( (type_descriptor "bfd *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n      as_abort("../../gas/as.c",0x519,"main");\n    }" { comment (expression_statement "as_abort("../../gas/as.c",0x519,"main");" (call_expression "as_abort("../../gas/as.c",0x519,"main")" identifier (argument_list "("../../gas/as.c",0x519,"main")" ( (string_literal ""../../gas/as.c"" " string_content ") , number_literal , (string_literal ""main"" " string_content ") ))) ;) })) (expression_statement "dot_symbol_init();" (call_expression "dot_symbol_init()" identifier (argument_list "()" ( ))) ;) (expression_statement "dwarf2_init();" (call_expression "dwarf2_init()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_symbol_make(".gasversion.",(segT)(_bfd_std_section + 0x230),0x5a3d,\n                      &predefined_address_frag);" (call_expression "local_symbol_make(".gasversion.",(segT)(_bfd_std_section + 0x230),0x5a3d,\n                      &predefined_address_frag)" identifier (argument_list "(".gasversion.",(segT)(_bfd_std_section + 0x230),0x5a3d,\n                      &predefined_address_frag)" ( (string_literal "".gasversion."" " string_content ") , (call_expression "(segT)(_bfd_std_section + 0x230)" (parenthesized_expression "(segT)" ( identifier )) (argument_list "(_bfd_std_section + 0x230)" ( (binary_expression "_bfd_std_section + 0x230" identifier + number_literal) ))) , number_literal , (pointer_expression "&predefined_address_frag" & identifier) ))) ;) (expression_statement "__ptr_00 = local_1a8;" (assignment_expression "__ptr_00 = local_1a8" identifier = identifier) ;) (expression_statement "uVar8 = local_19c;" (assignment_expression "uVar8 = local_19c" identifier = identifier) ;) (while_statement "while (local_1a8 = __ptr_00, local_19c = uVar8, defsyms != (defsym_list *)0x0) {\n      s = symbol_new(defsyms->name,(segT)(_bfd_std_section + 0x230),defsyms->value,\n                     &zero_address_frag);\n      S_SET_VOLATILE(s);\n      symbol_table_insert(s);\n      pdVar4 = defsyms->next;\n      free(defsyms);\n      defsyms = pdVar4;\n      __ptr_00 = local_1a8;\n      uVar8 = local_19c;\n    }" while (parenthesized_expression "(local_1a8 = __ptr_00, local_19c = uVar8, defsyms != (defsym_list *)0x0)" ( (comma_expression "local_1a8 = __ptr_00, local_19c = uVar8, defsyms != (defsym_list *)0x0" (assignment_expression "local_1a8 = __ptr_00" identifier = identifier) , (comma_expression "local_19c = uVar8, defsyms != (defsym_list *)0x0" (assignment_expression "local_19c = uVar8" identifier = identifier) , (binary_expression "defsyms != (defsym_list *)0x0" identifier != (cast_expression "(defsym_list *)0x0" ( (type_descriptor "defsym_list *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)))) )) (compound_statement "{\n      s = symbol_new(defsyms->name,(segT)(_bfd_std_section + 0x230),defsyms->value,\n                     &zero_address_frag);\n      S_SET_VOLATILE(s);\n      symbol_table_insert(s);\n      pdVar4 = defsyms->next;\n      free(defsyms);\n      defsyms = pdVar4;\n      __ptr_00 = local_1a8;\n      uVar8 = local_19c;\n    }" { (expression_statement "s = symbol_new(defsyms->name,(segT)(_bfd_std_section + 0x230),defsyms->value,\n                     &zero_address_frag);" (assignment_expression "s = symbol_new(defsyms->name,(segT)(_bfd_std_section + 0x230),defsyms->value,\n                     &zero_address_frag)" identifier = (call_expression "symbol_new(defsyms->name,(segT)(_bfd_std_section + 0x230),defsyms->value,\n                     &zero_address_frag)" identifier (argument_list "(defsyms->name,(segT)(_bfd_std_section + 0x230),defsyms->value,\n                     &zero_address_frag)" ( (field_expression "defsyms->name" identifier -> field_identifier) , (call_expression "(segT)(_bfd_std_section + 0x230)" (parenthesized_expression "(segT)" ( identifier )) (argument_list "(_bfd_std_section + 0x230)" ( (binary_expression "_bfd_std_section + 0x230" identifier + number_literal) ))) , (field_expression "defsyms->value" identifier -> field_identifier) , (pointer_expression "&zero_address_frag" & identifier) )))) ;) (expression_statement "S_SET_VOLATILE(s);" (call_expression "S_SET_VOLATILE(s)" identifier (argument_list "(s)" ( identifier ))) ;) (expression_statement "symbol_table_insert(s);" (call_expression "symbol_table_insert(s)" identifier (argument_list "(s)" ( identifier ))) ;) (expression_statement "pdVar4 = defsyms->next;" (assignment_expression "pdVar4 = defsyms->next" identifier = (field_expression "defsyms->next" identifier -> field_identifier)) ;) (expression_statement "free(defsyms);" (call_expression "free(defsyms)" identifier (argument_list "(defsyms)" ( identifier ))) ;) (expression_statement "defsyms = pdVar4;" (assignment_expression "defsyms = pdVar4" identifier = identifier) ;) (expression_statement "__ptr_00 = local_1a8;" (assignment_expression "__ptr_00 = local_1a8" identifier = identifier) ;) (expression_statement "uVar8 = local_19c;" (assignment_expression "uVar8 = local_19c" identifier = identifier) ;) })) (expression_statement "__s = (char **)(ulong)uVar8;" (assignment_expression "__s = (char **)(ulong)uVar8" identifier = (cast_expression "(char **)(ulong)uVar8" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (cast_expression "(ulong)uVar8" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "need_pass_2 = 0;" (assignment_expression "need_pass_2 = 0" identifier = number_literal) ;) (expression_statement "text_section = subseg_new(".text",0);" (assignment_expression "text_section = subseg_new(".text",0)" identifier = (call_expression "subseg_new(".text",0)" identifier (argument_list "(".text",0)" ( (string_literal "".text"" " string_content ") , number_literal )))) ;) (expression_statement "data_section = subseg_new(".data",0);" (assignment_expression "data_section = subseg_new(".data",0)" identifier = (call_expression "subseg_new(".data",0)" identifier (argument_list "(".data",0)" ( (string_literal "".data"" " string_content ") , number_literal )))) ;) (expression_statement "bss_section = subseg_new(".bss",0);" (assignment_expression "bss_section = subseg_new(".bss",0)" identifier = (call_expression "subseg_new(".bss",0)" identifier (argument_list "(".bss",0)" ( (string_literal "".bss"" " string_content ") , number_literal )))) ;) (expression_statement "uVar11 = stdoutput->xvec->section_flags;" (assignment_expression "uVar11 = stdoutput->xvec->section_flags" identifier = (field_expression "stdoutput->xvec->section_flags" (field_expression "stdoutput->xvec" identifier -> field_identifier) -> field_identifier)) ;) (expression_statement "bfd_set_section_flags(stdoutput,text_section,uVar11 & 0x1f);" (call_expression "bfd_set_section_flags(stdoutput,text_section,uVar11 & 0x1f)" identifier (argument_list "(stdoutput,text_section,uVar11 & 0x1f)" ( identifier , identifier , (binary_expression "uVar11 & 0x1f" identifier & number_literal) ))) ;) (expression_statement "bfd_set_section_flags(stdoutput,data_section,uVar11 & 0x27);" (call_expression "bfd_set_section_flags(stdoutput,data_section,uVar11 & 0x27)" identifier (argument_list "(stdoutput,data_section,uVar11 & 0x27)" ( identifier , identifier , (binary_expression "uVar11 & 0x27" identifier & number_literal) ))) ;) (expression_statement "ppcVar17 = __ptr_00 + 1;" (assignment_expression "ppcVar17 = __ptr_00 + 1" identifier = (binary_expression "__ptr_00 + 1" identifier + number_literal)) ;) (expression_statement "bfd_set_section_flags(stdoutput,bss_section,uVar11 & 1);" (call_expression "bfd_set_section_flags(stdoutput,bss_section,uVar11 & 1)" identifier (argument_list "(stdoutput,bss_section,uVar11 & 1)" ( identifier , identifier , (binary_expression "uVar11 & 1" identifier & number_literal) ))) ;) (expression_statement "pbVar1 = (byte *)((long)bss_section->userdata + 8);" (assignment_expression "pbVar1 = (byte *)((long)bss_section->userdata + 8)" identifier = (cast_expression "(byte *)((long)bss_section->userdata + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)bss_section->userdata + 8)" ( (binary_expression "(long)bss_section->userdata + 8" (cast_expression "(long)bss_section->userdata" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "bss_section->userdata" identifier -> field_identifier)) + number_literal) )))) ;) (expression_statement "*pbVar1 = *pbVar1 | 2;" (assignment_expression "*pbVar1 = *pbVar1 | 2" (pointer_expression "*pbVar1" * identifier) = (binary_expression "*pbVar1 | 2" (pointer_expression "*pbVar1" * identifier) | number_literal)) ;) (expression_statement "subseg_new("*ABS*",0);" (call_expression "subseg_new("*ABS*",0)" identifier (argument_list "("*ABS*",0)" ( (string_literal ""*ABS*"" " string_content ") , number_literal ))) ;) (expression_statement "subseg_new("*UND*",0);" (call_expression "subseg_new("*UND*",0)" identifier (argument_list "("*UND*",0)" ( (string_literal ""*UND*"" " string_content ") , number_literal ))) ;) (expression_statement "reg_section = subseg_new("*GAS `reg\' section*",0);" (assignment_expression "reg_section = subseg_new("*GAS `reg\' section*",0)" identifier = (call_expression "subseg_new("*GAS `reg\' section*",0)" identifier (argument_list "("*GAS `reg\' section*",0)" ( (string_literal ""*GAS `reg\' section*"" " string_content escape_sequence string_content ") , number_literal )))) ;) (expression_statement "expr_section = subseg_new("*GAS `expr\' section*",0);" (assignment_expression "expr_section = subseg_new("*GAS `expr\' section*",0)" identifier = (call_expression "subseg_new("*GAS `expr\' section*",0)" identifier (argument_list "("*GAS `expr\' section*",0)" ( (string_literal ""*GAS `expr\' section*"" " string_content escape_sequence string_content ") , number_literal )))) ;) (expression_statement "subseg_set(text_section,0);" (call_expression "subseg_set(text_section,0)" identifier (argument_list "(text_section,0)" ( identifier , number_literal ))) ;) (expression_statement "md_begin();" (call_expression "md_begin()" identifier (argument_list "()" ( ))) ;) (expression_statement "elf_begin();" (call_expression "elf_begin()" identifier (argument_list "()" ( ))) ;) (if_statement "if (uVar8 == 1) {\nLAB_00108d46:\n      read_a_source_file("");\n    }\n    else {\n      __s = __ptr_00 + (ulong)(uVar8 - 2) + 2;\n      __ptr_00 = (char **)0x0;\n      do {\n        if (*ppcVar17 != (char *)0x0) {\n          __ptr_00 = (char **)(ulong)((int)__ptr_00 + 1);\n          read_a_source_file(*ppcVar17);\n        }\n        ppcVar17 = ppcVar17 + 1;\n      } while (ppcVar17 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }" if (parenthesized_expression "(uVar8 == 1)" ( (binary_expression "uVar8 == 1" identifier == number_literal) )) (compound_statement "{\nLAB_00108d46:\n      read_a_source_file("");\n    }" { (labeled_statement "LAB_00108d46:\n      read_a_source_file("");" statement_identifier : (expression_statement "read_a_source_file("");" (call_expression "read_a_source_file("")" identifier (argument_list "("")" ( (string_literal """" " ") ))) ;)) }) (else_clause "else {\n      __s = __ptr_00 + (ulong)(uVar8 - 2) + 2;\n      __ptr_00 = (char **)0x0;\n      do {\n        if (*ppcVar17 != (char *)0x0) {\n          __ptr_00 = (char **)(ulong)((int)__ptr_00 + 1);\n          read_a_source_file(*ppcVar17);\n        }\n        ppcVar17 = ppcVar17 + 1;\n      } while (ppcVar17 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }" else (compound_statement "{\n      __s = __ptr_00 + (ulong)(uVar8 - 2) + 2;\n      __ptr_00 = (char **)0x0;\n      do {\n        if (*ppcVar17 != (char *)0x0) {\n          __ptr_00 = (char **)(ulong)((int)__ptr_00 + 1);\n          read_a_source_file(*ppcVar17);\n        }\n        ppcVar17 = ppcVar17 + 1;\n      } while (ppcVar17 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }" { (expression_statement "__s = __ptr_00 + (ulong)(uVar8 - 2) + 2;" (assignment_expression "__s = __ptr_00 + (ulong)(uVar8 - 2) + 2" identifier = (binary_expression "__ptr_00 + (ulong)(uVar8 - 2) + 2" (binary_expression "__ptr_00 + (ulong)(uVar8 - 2)" identifier + (call_expression "(ulong)(uVar8 - 2)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar8 - 2)" ( (binary_expression "uVar8 - 2" identifier - number_literal) )))) + number_literal)) ;) (expression_statement "__ptr_00 = (char **)0x0;" (assignment_expression "__ptr_00 = (char **)0x0" identifier = (cast_expression "(char **)0x0" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (do_statement "do {\n        if (*ppcVar17 != (char *)0x0) {\n          __ptr_00 = (char **)(ulong)((int)__ptr_00 + 1);\n          read_a_source_file(*ppcVar17);\n        }\n        ppcVar17 = ppcVar17 + 1;\n      } while (ppcVar17 != __s);" do (compound_statement "{\n        if (*ppcVar17 != (char *)0x0) {\n          __ptr_00 = (char **)(ulong)((int)__ptr_00 + 1);\n          read_a_source_file(*ppcVar17);\n        }\n        ppcVar17 = ppcVar17 + 1;\n      }" { (if_statement "if (*ppcVar17 != (char *)0x0) {\n          __ptr_00 = (char **)(ulong)((int)__ptr_00 + 1);\n          read_a_source_file(*ppcVar17);\n        }" if (parenthesized_expression "(*ppcVar17 != (char *)0x0)" ( (binary_expression "*ppcVar17 != (char *)0x0" (pointer_expression "*ppcVar17" * identifier) != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          __ptr_00 = (char **)(ulong)((int)__ptr_00 + 1);\n          read_a_source_file(*ppcVar17);\n        }" { (expression_statement "__ptr_00 = (char **)(ulong)((int)__ptr_00 + 1);" (assignment_expression "__ptr_00 = (char **)(ulong)((int)__ptr_00 + 1)" identifier = (cast_expression "(char **)(ulong)((int)__ptr_00 + 1)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "(ulong)((int)__ptr_00 + 1)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "((int)__ptr_00 + 1)" ( (binary_expression "(int)__ptr_00 + 1" (cast_expression "(int)__ptr_00" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "read_a_source_file(*ppcVar17);" (call_expression "read_a_source_file(*ppcVar17)" identifier (argument_list "(*ppcVar17)" ( (pointer_expression "*ppcVar17" * identifier) ))) ;) })) (expression_statement "ppcVar17 = ppcVar17 + 1;" (assignment_expression "ppcVar17 = ppcVar17 + 1" identifier = (binary_expression "ppcVar17 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(ppcVar17 != __s)" ( (binary_expression "ppcVar17 != __s" identifier != identifier) )) ;) (if_statement "if ((int)__ptr_00 == 0) goto LAB_00108d46;" if (parenthesized_expression "((int)__ptr_00 == 0)" ( (binary_expression "(int)__ptr_00 == 0" (cast_expression "(int)__ptr_00" ( (type_descriptor "int" primitive_type) ) identifier) == number_literal) )) (goto_statement "goto LAB_00108d46;" goto statement_identifier ;)) }))) (expression_statement "cond_finish_check(-1);" (call_expression "cond_finish_check(-1)" identifier (argument_list "(-1)" ( number_literal ))) ;) (if_statement "if (flag_execstack != 0 || flag_noexecstack != 0) {\n      paVar14 = subseg_new(".note.GNU-stack",0);\n      bfd_set_section_flags(stdoutput,paVar14,(-(uint)(flag_execstack == 0) & 0xfffffff0) + 0x18);\n    }" if (parenthesized_expression "(flag_execstack != 0 || flag_noexecstack != 0)" ( (binary_expression "flag_execstack != 0 || flag_noexecstack != 0" (binary_expression "flag_execstack != 0" identifier != number_literal) || (binary_expression "flag_noexecstack != 0" identifier != number_literal)) )) (compound_statement "{\n      paVar14 = subseg_new(".note.GNU-stack",0);\n      bfd_set_section_flags(stdoutput,paVar14,(-(uint)(flag_execstack == 0) & 0xfffffff0) + 0x18);\n    }" { (expression_statement "paVar14 = subseg_new(".note.GNU-stack",0);" (assignment_expression "paVar14 = subseg_new(".note.GNU-stack",0)" identifier = (call_expression "subseg_new(".note.GNU-stack",0)" identifier (argument_list "(".note.GNU-stack",0)" ( (string_literal "".note.GNU-stack"" " string_content ") , number_literal )))) ;) (expression_statement "bfd_set_section_flags(stdoutput,paVar14,(-(uint)(flag_execstack == 0) & 0xfffffff0) + 0x18);" (call_expression "bfd_set_section_flags(stdoutput,paVar14,(-(uint)(flag_execstack == 0) & 0xfffffff0) + 0x18)" identifier (argument_list "(stdoutput,paVar14,(-(uint)(flag_execstack == 0) & 0xfffffff0) + 0x18)" ( identifier , identifier , (binary_expression "(-(uint)(flag_execstack == 0) & 0xfffffff0) + 0x18" (parenthesized_expression "(-(uint)(flag_execstack == 0) & 0xfffffff0)" ( (binary_expression "-(uint)(flag_execstack == 0) & 0xfffffff0" (unary_expression "-(uint)(flag_execstack == 0)" - (call_expression "(uint)(flag_execstack == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(flag_execstack == 0)" ( (binary_expression "flag_execstack == 0" identifier == number_literal) )))) & number_literal) )) + number_literal) ))) ;) })) (expression_statement "dwarf2_finish();" (call_expression "dwarf2_finish()" identifier (argument_list "()" ( ))) ;) (expression_statement "cfi_finish();" (call_expression "cfi_finish()" identifier (argument_list "()" ( ))) ;) (expression_statement "keep_it = 0;" (assignment_expression "keep_it = 0" identifier = number_literal) ;) (expression_statement "iVar9 = seen_at_least_1_file();" (assignment_expression "iVar9 = seen_at_least_1_file()" identifier = (call_expression "seen_at_least_1_file()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar9 != 0) {\n      write_object_file();\n      __s = (char **)warn_msg;\n      uVar8 = had_warnings();\n      __ptr_00 = (char **)(ulong)uVar8;\n      uVar11 = had_errors();\n      ppcVar17 = (char **)(ulong)uVar11;\n      pcVar18 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar8,5);\n      sprintf((char *)__s,pcVar18,(ulong)uVar8);\n      pcVar18 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar11,5);\n      sprintf((char *)&sib,pcVar18,(ulong)uVar11);\n      if ((flag_fatal_warnings != 0) && (uVar8 != 0)) {\n        if (uVar11 == 0) {\n          ppcVar17 = (char **)(ulong)uVar8;\n          pcVar18 = (char *)dcgettext(0,"%s, treating warnings as errors",5);\n          as_bad(pcVar18,__s);\n        }\n        else {\n          ppcVar17 = (char **)(ulong)(uVar11 + uVar8);\n        }\n      }\n      if ((int)ppcVar17 == 0) {\n        keep_it = 1;\n      }\n      else if (flag_always_generate_output != '\0') {\n        keep_it = 1;\n        pcVar18 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar18,&sib,__s);\n      }\n    }" if (parenthesized_expression "(iVar9 != 0)" ( (binary_expression "iVar9 != 0" identifier != number_literal) )) (compound_statement "{\n      write_object_file();\n      __s = (char **)warn_msg;\n      uVar8 = had_warnings();\n      __ptr_00 = (char **)(ulong)uVar8;\n      uVar11 = had_errors();\n      ppcVar17 = (char **)(ulong)uVar11;\n      pcVar18 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar8,5);\n      sprintf((char *)__s,pcVar18,(ulong)uVar8);\n      pcVar18 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar11,5);\n      sprintf((char *)&sib,pcVar18,(ulong)uVar11);\n      if ((flag_fatal_warnings != 0) && (uVar8 != 0)) {\n        if (uVar11 == 0) {\n          ppcVar17 = (char **)(ulong)uVar8;\n          pcVar18 = (char *)dcgettext(0,"%s, treating warnings as errors",5);\n          as_bad(pcVar18,__s);\n        }\n        else {\n          ppcVar17 = (char **)(ulong)(uVar11 + uVar8);\n        }\n      }\n      if ((int)ppcVar17 == 0) {\n        keep_it = 1;\n      }\n      else if (flag_always_generate_output != '\0') {\n        keep_it = 1;\n        pcVar18 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar18,&sib,__s);\n      }\n    }" { (expression_statement "write_object_file();" (call_expression "write_object_file()" identifier (argument_list "()" ( ))) ;) (expression_statement "__s = (char **)warn_msg;" (assignment_expression "__s = (char **)warn_msg" identifier = (cast_expression "(char **)warn_msg" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "uVar8 = had_warnings();" (assignment_expression "uVar8 = had_warnings()" identifier = (call_expression "had_warnings()" identifier (argument_list "()" ( )))) ;) (expression_statement "__ptr_00 = (char **)(ulong)uVar8;" (assignment_expression "__ptr_00 = (char **)(ulong)uVar8" identifier = (cast_expression "(char **)(ulong)uVar8" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (cast_expression "(ulong)uVar8" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "uVar11 = had_errors();" (assignment_expression "uVar11 = had_errors()" identifier = (call_expression "had_errors()" identifier (argument_list "()" ( )))) ;) (expression_statement "ppcVar17 = (char **)(ulong)uVar11;" (assignment_expression "ppcVar17 = (char **)(ulong)uVar11" identifier = (cast_expression "(char **)(ulong)uVar11" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (cast_expression "(ulong)uVar11" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "pcVar18 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar8,5);" (assignment_expression "pcVar18 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar8,5)" identifier = (cast_expression "(char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar8,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,"%d warning","%d warnings",(long)(int)uVar8,5)" identifier (argument_list "(0,"%d warning","%d warnings",(long)(int)uVar8,5)" ( number_literal , (string_literal ""%d warning"" " string_content ") , (string_literal ""%d warnings"" " string_content ") , (cast_expression "(long)(int)uVar8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)uVar8" ( (type_descriptor "int" primitive_type) ) identifier)) , number_literal ))))) ;) (expression_statement "sprintf((char *)__s,pcVar18,(ulong)uVar8);" (call_expression "sprintf((char *)__s,pcVar18,(ulong)uVar8)" identifier (argument_list "((char *)__s,pcVar18,(ulong)uVar8)" ( (cast_expression "(char *)__s" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , identifier , (cast_expression "(ulong)uVar8" ( (type_descriptor "ulong" type_identifier) ) identifier) ))) ;) (expression_statement "pcVar18 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar11,5);" (assignment_expression "pcVar18 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar11,5)" identifier = (cast_expression "(char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar11,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,"%d error","%d errors",(long)(int)uVar11,5)" identifier (argument_list "(0,"%d error","%d errors",(long)(int)uVar11,5)" ( number_literal , (string_literal ""%d error"" " string_content ") , (string_literal ""%d errors"" " string_content ") , (cast_expression "(long)(int)uVar11" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)uVar11" ( (type_descriptor "int" primitive_type) ) identifier)) , number_literal ))))) ;) (expression_statement "sprintf((char *)&sib,pcVar18,(ulong)uVar11);" (call_expression "sprintf((char *)&sib,pcVar18,(ulong)uVar11)" identifier (argument_list "((char *)&sib,pcVar18,(ulong)uVar11)" ( (cast_expression "(char *)&sib" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&sib" & identifier)) , identifier , (cast_expression "(ulong)uVar11" ( (type_descriptor "ulong" type_identifier) ) identifier) ))) ;) (if_statement "if ((flag_fatal_warnings != 0) && (uVar8 != 0)) {\n        if (uVar11 == 0) {\n          ppcVar17 = (char **)(ulong)uVar8;\n          pcVar18 = (char *)dcgettext(0,"%s, treating warnings as errors",5);\n          as_bad(pcVar18,__s);\n        }\n        else {\n          ppcVar17 = (char **)(ulong)(uVar11 + uVar8);\n        }\n      }" if (parenthesized_expression "((flag_fatal_warnings != 0) && (uVar8 != 0))" ( (binary_expression "(flag_fatal_warnings != 0) && (uVar8 != 0)" (parenthesized_expression "(flag_fatal_warnings != 0)" ( (binary_expression "flag_fatal_warnings != 0" identifier != number_literal) )) && (parenthesized_expression "(uVar8 != 0)" ( (binary_expression "uVar8 != 0" identifier != number_literal) ))) )) (compound_statement "{\n        if (uVar11 == 0) {\n          ppcVar17 = (char **)(ulong)uVar8;\n          pcVar18 = (char *)dcgettext(0,"%s, treating warnings as errors",5);\n          as_bad(pcVar18,__s);\n        }\n        else {\n          ppcVar17 = (char **)(ulong)(uVar11 + uVar8);\n        }\n      }" { (if_statement "if (uVar11 == 0) {\n          ppcVar17 = (char **)(ulong)uVar8;\n          pcVar18 = (char *)dcgettext(0,"%s, treating warnings as errors",5);\n          as_bad(pcVar18,__s);\n        }\n        else {\n          ppcVar17 = (char **)(ulong)(uVar11 + uVar8);\n        }" if (parenthesized_expression "(uVar11 == 0)" ( (binary_expression "uVar11 == 0" identifier == number_literal) )) (compound_statement "{\n          ppcVar17 = (char **)(ulong)uVar8;\n          pcVar18 = (char *)dcgettext(0,"%s, treating warnings as errors",5);\n          as_bad(pcVar18,__s);\n        }" { (expression_statement "ppcVar17 = (char **)(ulong)uVar8;" (assignment_expression "ppcVar17 = (char **)(ulong)uVar8" identifier = (cast_expression "(char **)(ulong)uVar8" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (cast_expression "(ulong)uVar8" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "pcVar18 = (char *)dcgettext(0,"%s, treating warnings as errors",5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,"%s, treating warnings as errors",5)" identifier = (cast_expression "(char *)dcgettext(0,"%s, treating warnings as errors",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"%s, treating warnings as errors",5)" identifier (argument_list "(0,"%s, treating warnings as errors",5)" ( number_literal , (string_literal ""%s, treating warnings as errors"" " string_content ") , number_literal ))))) ;) (expression_statement "as_bad(pcVar18,__s);" (call_expression "as_bad(pcVar18,__s)" identifier (argument_list "(pcVar18,__s)" ( identifier , identifier ))) ;) }) (else_clause "else {\n          ppcVar17 = (char **)(ulong)(uVar11 + uVar8);\n        }" else (compound_statement "{\n          ppcVar17 = (char **)(ulong)(uVar11 + uVar8);\n        }" { (expression_statement "ppcVar17 = (char **)(ulong)(uVar11 + uVar8);" (assignment_expression "ppcVar17 = (char **)(ulong)(uVar11 + uVar8)" identifier = (cast_expression "(char **)(ulong)(uVar11 + uVar8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "(ulong)(uVar11 + uVar8)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar11 + uVar8)" ( (binary_expression "uVar11 + uVar8" identifier + identifier) ))))) ;) }))) })) (if_statement "if ((int)ppcVar17 == 0) {\n        keep_it = 1;\n      }\n      else if (flag_always_generate_output != '\0') {\n        keep_it = 1;\n        pcVar18 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar18,&sib,__s);\n      }" if (parenthesized_expression "((int)ppcVar17 == 0)" ( (binary_expression "(int)ppcVar17 == 0" (cast_expression "(int)ppcVar17" ( (type_descriptor "int" primitive_type) ) identifier) == number_literal) )) (compound_statement "{\n        keep_it = 1;\n      }" { (expression_statement "keep_it = 1;" (assignment_expression "keep_it = 1" identifier = number_literal) ;) }) (else_clause "else if (flag_always_generate_output != '\0') {\n        keep_it = 1;\n        pcVar18 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar18,&sib,__s);\n      }" else (if_statement "if (flag_always_generate_output != '\0') {\n        keep_it = 1;\n        pcVar18 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar18,&sib,__s);\n      }" if (parenthesized_expression "(flag_always_generate_output != '\0')" ( (binary_expression "flag_always_generate_output != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        keep_it = 1;\n        pcVar18 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar18,&sib,__s);\n      }" { (expression_statement "keep_it = 1;" (assignment_expression "keep_it = 1" identifier = number_literal) ;) (expression_statement "pcVar18 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"%s, %s, generating bad object file\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"%s, %s, generating bad object file\n",5)" identifier (argument_list "(0,"%s, %s, generating bad object file\n",5)" ( number_literal , (string_literal ""%s, %s, generating bad object file\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "fprintf(stderr,pcVar18,&sib,__s);" (call_expression "fprintf(stderr,pcVar18,&sib,__s)" identifier (argument_list "(stderr,pcVar18,&sib,__s)" ( identifier , identifier , (pointer_expression "&sib" & identifier) , identifier ))) ;) })))) })) (expression_statement "fflush(stderr);" (call_expression "fflush(stderr)" identifier (argument_list "(stderr)" ( identifier ))) ;) (expression_statement "listing_print(listing_filename,argv);" (call_expression "listing_print(listing_filename,argv)" identifier (argument_list "(listing_filename,argv)" ( identifier , identifier ))) ;) (expression_statement "input_scrub_end();" (call_expression "input_scrub_end()" identifier (argument_list "()" ( ))) ;) (expression_statement "iVar9 = had_errors();" (assignment_expression "iVar9 = had_errors()" identifier = (call_expression "had_errors()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar9 != 0) break;" if (parenthesized_expression "(iVar9 != 0)" ( (binary_expression "iVar9 != 0" identifier != number_literal) )) (break_statement "break;" break ;)) (expression_statement "print_dependencies();" (call_expression "print_dependencies()" identifier (argument_list "()" ( ))) ;) (expression_statement "xexit(0);" (call_expression "xexit(0)" identifier (argument_list "(0)" ( number_literal ))) ;) (labeled_statement "LAB_00108bff:\n    xatexit(dump_statistics);" statement_identifier : (expression_statement "xatexit(dump_statistics);" (call_expression "xatexit(dump_statistics)" identifier (argument_list "(dump_statistics)" ( identifier ))) ;)) }) while (parenthesized_expression "( true )" ( true )) ;) (expression_statement "xexit(1);" (call_expression "xexit(1)" identifier (argument_list "(1)" ( number_literal ))) ;) (expression_statement "iVar9 = strcasecmp(pcVar13,"warning");" (assignment_expression "iVar9 = strcasecmp(pcVar13,"warning")" identifier = (call_expression "strcasecmp(pcVar13,"warning")" identifier (argument_list "(pcVar13,"warning")" ( identifier , (string_literal ""warning"" " string_content ") )))) ;) (if_statement "if (iVar9 != 0) {\n    pcVar18 = (char *)dcgettext(0,"Invalid --size-check= option: `%s\'",5);\n                    /* WARNING: Subroutine does not return */\n    as_fatal(pcVar18,pcVar13);\n  }" if (parenthesized_expression "(iVar9 != 0)" ( (binary_expression "iVar9 != 0" identifier != number_literal) )) (compound_statement "{\n    pcVar18 = (char *)dcgettext(0,"Invalid --size-check= option: `%s\'",5);\n                    /* WARNING: Subroutine does not return */\n    as_fatal(pcVar18,pcVar13);\n  }" { (expression_statement "pcVar18 = (char *)dcgettext(0,"Invalid --size-check= option: `%s\'",5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,"Invalid --size-check= option: `%s\'",5)" identifier = (cast_expression "(char *)dcgettext(0,"Invalid --size-check= option: `%s\'",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Invalid --size-check= option: `%s\'",5)" identifier (argument_list "(0,"Invalid --size-check= option: `%s\'",5)" ( number_literal , (string_literal ""Invalid --size-check= option: `%s\'"" " string_content escape_sequence ") , number_literal ))))) ;) comment (expression_statement "as_fatal(pcVar18,pcVar13);" (call_expression "as_fatal(pcVar18,pcVar13)" identifier (argument_list "(pcVar18,pcVar13)" ( identifier , identifier ))) ;) })) (expression_statement "flag_allow_nonconst_size = 1;" (assignment_expression "flag_allow_nonconst_size = 1" identifier = number_literal) ;) (goto_statement "goto LAB_00107958;" goto statement_identifier ;) })))
(translation_unit "void FUN_001077a0(uint param_1,long *param_2)\n\n{\n  byte *pbVar1;\n  undefined1 (*pauVar2) [16];\n  size_t sVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  uint uVar8;\n  void *__ptr;\n  long *__ptr_00;\n  long *plVar9;\n  undefined8 uVar10;\n  undefined8 uVar11;\n  char *pcVar12;\n  long lVar13;\n  ulong uVar14;\n  long *plVar15;\n  undefined *puVar16;\n  undefined8 *puVar17;\n  undefined8 *puVar18;\n  long *__s;\n  char *__s1;\n  byte bVar19;\n  long *local_1a8;\n  uint local_1a0;\n  uint local_19c;\n  long local_198 [8];\n  stat local_158;\n  stat local_c8;\n  \n  bVar19 = 0;\n  local_1a8 = param_2;\n  local_19c = param_1;\n  _DAT_00162ec8 = FUN_0013a800();\n  FUN_0011c7a0();\n  setlocale(5,"");\n  setlocale(0,"");\n  bindtextdomain(&DAT_0013b28d,"/usr/share/locale");\n  textdomain(&DAT_0013b28d);\n  if (DAT_00162eac != 0) {\n    DAT_00162eb0 = 0x40;\n  }\n  DAT_00162ee8 = *local_1a8;\n  xmalloc_set_program_name();\n  FUN_0013a450(&local_19c,&local_1a8);\n  DAT_00163888 = "a.out";\n  hex_init();\n  bfd_init();\n  bfd_set_error_program_name(DAT_00162ee8);\n  __ptr = (void *)concat("-JLMRWZa::Dfg::I:o:vwX",PTR_s_O_g_G__0015a840,0);\n  __ptr_00 = (long *)xmalloc(DAT_0015a718 + 0x580);\n  puVar16 = PTR_s_alternate_0014e9c0;\n  __ptr_00[0xab] = DAT_0014ef18;\n  *__ptr_00 = (long)puVar16;\n  lVar13 = (long)__ptr_00 - (long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);\n  puVar17 = (undefined8 *)((long)&PTR_s_alternate_0014e9c0 - lVar13);\n  puVar18 = (undefined8 *)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);\n  for (uVar14 = (ulong)((int)lVar13 + 0x560U >> 3); sVar3 = DAT_0015a718, uVar14 != 0;\n      uVar14 = uVar14 - 1) {\n    *puVar18 = *puVar17;\n    puVar17 = puVar17 + (ulong)bVar19 * -2 + 1;\n    puVar18 = puVar18 + (ulong)bVar19 * -2 + 1;\n  }\n  memcpy(__ptr_00 + 0xac,&PTR_s_march_0015a740,DAT_0015a718);\n  uVar4 = local_19c;\n  __s = local_1a8;\n  pauVar2 = (undefined1 (*) [16])((long)__ptr_00 + sVar3 + 0x560);\n  *pauVar2 = (undefined1  [16])0x0;\n  plVar15 = (long *)&DAT_0013cb10;\n  pauVar2[1] = (undefined1  [16])0x0;\n  plVar9 = (long *)xmalloc((long)(int)(local_19c + 1) << 3);\n  local_1a0 = 1;\n  lVar13 = *__s;\n  plVar9[1] = 0;\n  *plVar9 = lVar13;\nLAB_00107958:\n  while( true ) {\n    uVar5 = getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8);\n    __s1 = (char *)(ulong)uVar5;\n    if (uVar5 == 0xffffffff) break;\n    if (uVar5 < 0xba) {\n                    \n                    \n      (*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();\n      return;\n    }\n    iVar6 = FUN_001347a0(__s1,optarg);\n    if (iVar6 == 0) {\n      if (uVar5 != 0x76) {\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    \n        exit(1);\n      }\n      if (DAT_00162ebc == 0) {\n        FUN_0010a980();\n      }\n      _DAT_00162ea8 = 1;\n    }\n  }\n  free(__ptr);\n  free(__ptr_00);\n  local_19c = local_1a0;\n  local_1a8 = plVar9;\n  FUN_00134ab0();\n  if (((1 < (int)local_19c) && (iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0)) &&\n     (1 < (int)local_19c)) {\n    lVar13 = 8;\n    iVar6 = 1;\n    do {\n      iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8);\n      pcVar12 = DAT_00163888;\n      if (((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))) {\n        DAT_00163888 = (char *)0x0;\n        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);\n        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    \n        FUN_0011c360(uVar10,uVar11,pcVar12);\n      }\n      iVar6 = iVar6 + 1;\n      lVar13 = lVar13 + 8;\n    } while (iVar6 < (int)local_19c);\n  }\n  FUN_0012a770();\n  FUN_00115310();\n  FUN_00125b60();\n  FUN_0011da80();\n  FUN_00116770();\n  FUN_00112f40();\n  FUN_0013abc0(FUN_0010a950);\n  if (DAT_00163940 != '\0') goto LAB_00108bff;\n  do {\n    FUN_0011a8a0(DAT_00162ec0,DAT_00163950,0,FUN_0010a810);\n    FUN_0011c840(DAT_00163888);\n    if (DAT_00163a50 == 0) {\n                    \n      FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7);\n    }\n    FUN_0012a810();\n    FUN_0010e380();\n    FUN_00126440(".gasversion.",0x15aad0,0x5a3d,&DAT_001638c0);\n    __ptr_00 = local_1a8;\n    uVar5 = local_19c;\n    while (local_1a8 = __ptr_00, local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0) {\n      uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800);\n      FUN_00129e10(uVar11);\n      FUN_00126560(uVar11);\n      puVar17 = (undefined8 *)*DAT_00162ed0;\n      free(DAT_00162ed0);\n      DAT_00162ed0 = puVar17;\n      __ptr_00 = local_1a8;\n      uVar5 = local_19c;\n    }\n    __s = (long *)(ulong)uVar5;\n    DAT_001637cc = 0;\n    DAT_00163930 = FUN_00125ca0(".text",0);\n    DAT_00163868 = FUN_00125ca0(".data",0);\n    DAT_001637d0 = FUN_00125ca0(&DAT_0013b3b5,0);\n    uVar8 = *(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163930,uVar8 & 0x1f);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163868,uVar8 & 0x27);\n    plVar15 = __ptr_00 + 1;\n    bfd_set_section_flags(DAT_00163a50,DAT_001637d0,uVar8 & 1);\n    pbVar1 = (byte *)(*(long *)(DAT_001637d0 + 0xa8) + 8);\n    *pbVar1 = *pbVar1 | 2;\n    FUN_00125ca0("*ABS*",0);\n    FUN_00125ca0(&DAT_0013b3c0,0);\n    DAT_00163898 = FUN_00125ca0("*GAS `reg\' section*",0);\n    DAT_001637c0 = FUN_00125ca0("*GAS `expr\' section*",0);\n    FUN_00125d00(DAT_00163930,0);\n    FUN_00132b90();\n    FUN_00135be0();\n    if (uVar5 == 1) {\nLAB_00108d46:\n      FUN_001239f0(&DAT_00142ab6);\n    }\n    else {\n      __s = __ptr_00 + (ulong)(uVar5 - 2) + 2;\n      __ptr_00 = (long *)0x0;\n      do {\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      } while (plVar15 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }\n    FUN_0010c560(0xffffffff);\n    if (DAT_00163878 != 0 || _DAT_001638a8 != 0) {\n      uVar11 = FUN_00125ca0(".note.GNU-stack",0);\n      bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18);\n    }\n    FUN_0010e390();\n    FUN_00111a40();\n    DAT_00162ee0 = 0;\n    iVar6 = FUN_00116d00();\n    if (iVar6 != 0) {\n      FUN_0012e000();\n      __s = local_198;\n      uVar5 = FUN_0011bf10();\n      __ptr_00 = (long *)(ulong)uVar5;\n      uVar8 = FUN_0011bf20();\n      plVar15 = (long *)(ulong)uVar8;\n      pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5);\n      sprintf((char *)__s,pcVar12,(ulong)uVar5);\n      pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5);\n      sprintf((char *)&local_c8,pcVar12,(ulong)uVar8);\n      if ((DAT_001637f4 != 0) && (uVar5 != 0)) {\n        if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }\n      }\n      if ((int)plVar15 == 0) {\n        DAT_00162ee0 = 1;\n      }\n      else if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }\n    }\n    fflush(stderr);\n    FUN_00117f20(DAT_00162ed8,param_2);\n    FUN_001167a0();\n    iVar6 = FUN_0011bf20();\n    if (iVar6 != 0) break;\n    FUN_0010c930();\n    xexit(0);\nLAB_00108bff:\n    FUN_0013abc0(FUN_0010a8a0);\n  } while( true );\n  xexit(1);\n  iVar6 = strcasecmp(__s1,"warning");\n  if (iVar6 != 0) {\n    uVar11 = dcgettext(0,"Invalid --size-check= option: `%s\'",5);\n                    \n    FUN_0011c360(uVar11,__s1);\n  }\n  DAT_001638b0 = 1;\n  goto LAB_00107958;\n}\n\n" (function_definition "void FUN_001077a0(uint param_1,long *param_2)\n\n{\n  byte *pbVar1;\n  undefined1 (*pauVar2) [16];\n  size_t sVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  uint uVar8;\n  void *__ptr;\n  long *__ptr_00;\n  long *plVar9;\n  undefined8 uVar10;\n  undefined8 uVar11;\n  char *pcVar12;\n  long lVar13;\n  ulong uVar14;\n  long *plVar15;\n  undefined *puVar16;\n  undefined8 *puVar17;\n  undefined8 *puVar18;\n  long *__s;\n  char *__s1;\n  byte bVar19;\n  long *local_1a8;\n  uint local_1a0;\n  uint local_19c;\n  long local_198 [8];\n  stat local_158;\n  stat local_c8;\n  \n  bVar19 = 0;\n  local_1a8 = param_2;\n  local_19c = param_1;\n  _DAT_00162ec8 = FUN_0013a800();\n  FUN_0011c7a0();\n  setlocale(5,"");\n  setlocale(0,"");\n  bindtextdomain(&DAT_0013b28d,"/usr/share/locale");\n  textdomain(&DAT_0013b28d);\n  if (DAT_00162eac != 0) {\n    DAT_00162eb0 = 0x40;\n  }\n  DAT_00162ee8 = *local_1a8;\n  xmalloc_set_program_name();\n  FUN_0013a450(&local_19c,&local_1a8);\n  DAT_00163888 = "a.out";\n  hex_init();\n  bfd_init();\n  bfd_set_error_program_name(DAT_00162ee8);\n  __ptr = (void *)concat("-JLMRWZa::Dfg::I:o:vwX",PTR_s_O_g_G__0015a840,0);\n  __ptr_00 = (long *)xmalloc(DAT_0015a718 + 0x580);\n  puVar16 = PTR_s_alternate_0014e9c0;\n  __ptr_00[0xab] = DAT_0014ef18;\n  *__ptr_00 = (long)puVar16;\n  lVar13 = (long)__ptr_00 - (long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);\n  puVar17 = (undefined8 *)((long)&PTR_s_alternate_0014e9c0 - lVar13);\n  puVar18 = (undefined8 *)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);\n  for (uVar14 = (ulong)((int)lVar13 + 0x560U >> 3); sVar3 = DAT_0015a718, uVar14 != 0;\n      uVar14 = uVar14 - 1) {\n    *puVar18 = *puVar17;\n    puVar17 = puVar17 + (ulong)bVar19 * -2 + 1;\n    puVar18 = puVar18 + (ulong)bVar19 * -2 + 1;\n  }\n  memcpy(__ptr_00 + 0xac,&PTR_s_march_0015a740,DAT_0015a718);\n  uVar4 = local_19c;\n  __s = local_1a8;\n  pauVar2 = (undefined1 (*) [16])((long)__ptr_00 + sVar3 + 0x560);\n  *pauVar2 = (undefined1  [16])0x0;\n  plVar15 = (long *)&DAT_0013cb10;\n  pauVar2[1] = (undefined1  [16])0x0;\n  plVar9 = (long *)xmalloc((long)(int)(local_19c + 1) << 3);\n  local_1a0 = 1;\n  lVar13 = *__s;\n  plVar9[1] = 0;\n  *plVar9 = lVar13;\nLAB_00107958:\n  while( true ) {\n    uVar5 = getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8);\n    __s1 = (char *)(ulong)uVar5;\n    if (uVar5 == 0xffffffff) break;\n    if (uVar5 < 0xba) {\n                    \n                    \n      (*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();\n      return;\n    }\n    iVar6 = FUN_001347a0(__s1,optarg);\n    if (iVar6 == 0) {\n      if (uVar5 != 0x76) {\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    \n        exit(1);\n      }\n      if (DAT_00162ebc == 0) {\n        FUN_0010a980();\n      }\n      _DAT_00162ea8 = 1;\n    }\n  }\n  free(__ptr);\n  free(__ptr_00);\n  local_19c = local_1a0;\n  local_1a8 = plVar9;\n  FUN_00134ab0();\n  if (((1 < (int)local_19c) && (iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0)) &&\n     (1 < (int)local_19c)) {\n    lVar13 = 8;\n    iVar6 = 1;\n    do {\n      iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8);\n      pcVar12 = DAT_00163888;\n      if (((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))) {\n        DAT_00163888 = (char *)0x0;\n        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);\n        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    \n        FUN_0011c360(uVar10,uVar11,pcVar12);\n      }\n      iVar6 = iVar6 + 1;\n      lVar13 = lVar13 + 8;\n    } while (iVar6 < (int)local_19c);\n  }\n  FUN_0012a770();\n  FUN_00115310();\n  FUN_00125b60();\n  FUN_0011da80();\n  FUN_00116770();\n  FUN_00112f40();\n  FUN_0013abc0(FUN_0010a950);\n  if (DAT_00163940 != '\0') goto LAB_00108bff;\n  do {\n    FUN_0011a8a0(DAT_00162ec0,DAT_00163950,0,FUN_0010a810);\n    FUN_0011c840(DAT_00163888);\n    if (DAT_00163a50 == 0) {\n                    \n      FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7);\n    }\n    FUN_0012a810();\n    FUN_0010e380();\n    FUN_00126440(".gasversion.",0x15aad0,0x5a3d,&DAT_001638c0);\n    __ptr_00 = local_1a8;\n    uVar5 = local_19c;\n    while (local_1a8 = __ptr_00, local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0) {\n      uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800);\n      FUN_00129e10(uVar11);\n      FUN_00126560(uVar11);\n      puVar17 = (undefined8 *)*DAT_00162ed0;\n      free(DAT_00162ed0);\n      DAT_00162ed0 = puVar17;\n      __ptr_00 = local_1a8;\n      uVar5 = local_19c;\n    }\n    __s = (long *)(ulong)uVar5;\n    DAT_001637cc = 0;\n    DAT_00163930 = FUN_00125ca0(".text",0);\n    DAT_00163868 = FUN_00125ca0(".data",0);\n    DAT_001637d0 = FUN_00125ca0(&DAT_0013b3b5,0);\n    uVar8 = *(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163930,uVar8 & 0x1f);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163868,uVar8 & 0x27);\n    plVar15 = __ptr_00 + 1;\n    bfd_set_section_flags(DAT_00163a50,DAT_001637d0,uVar8 & 1);\n    pbVar1 = (byte *)(*(long *)(DAT_001637d0 + 0xa8) + 8);\n    *pbVar1 = *pbVar1 | 2;\n    FUN_00125ca0("*ABS*",0);\n    FUN_00125ca0(&DAT_0013b3c0,0);\n    DAT_00163898 = FUN_00125ca0("*GAS `reg\' section*",0);\n    DAT_001637c0 = FUN_00125ca0("*GAS `expr\' section*",0);\n    FUN_00125d00(DAT_00163930,0);\n    FUN_00132b90();\n    FUN_00135be0();\n    if (uVar5 == 1) {\nLAB_00108d46:\n      FUN_001239f0(&DAT_00142ab6);\n    }\n    else {\n      __s = __ptr_00 + (ulong)(uVar5 - 2) + 2;\n      __ptr_00 = (long *)0x0;\n      do {\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      } while (plVar15 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }\n    FUN_0010c560(0xffffffff);\n    if (DAT_00163878 != 0 || _DAT_001638a8 != 0) {\n      uVar11 = FUN_00125ca0(".note.GNU-stack",0);\n      bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18);\n    }\n    FUN_0010e390();\n    FUN_00111a40();\n    DAT_00162ee0 = 0;\n    iVar6 = FUN_00116d00();\n    if (iVar6 != 0) {\n      FUN_0012e000();\n      __s = local_198;\n      uVar5 = FUN_0011bf10();\n      __ptr_00 = (long *)(ulong)uVar5;\n      uVar8 = FUN_0011bf20();\n      plVar15 = (long *)(ulong)uVar8;\n      pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5);\n      sprintf((char *)__s,pcVar12,(ulong)uVar5);\n      pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5);\n      sprintf((char *)&local_c8,pcVar12,(ulong)uVar8);\n      if ((DAT_001637f4 != 0) && (uVar5 != 0)) {\n        if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }\n      }\n      if ((int)plVar15 == 0) {\n        DAT_00162ee0 = 1;\n      }\n      else if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }\n    }\n    fflush(stderr);\n    FUN_00117f20(DAT_00162ed8,param_2);\n    FUN_001167a0();\n    iVar6 = FUN_0011bf20();\n    if (iVar6 != 0) break;\n    FUN_0010c930();\n    xexit(0);\nLAB_00108bff:\n    FUN_0013abc0(FUN_0010a8a0);\n  } while( true );\n  xexit(1);\n  iVar6 = strcasecmp(__s1,"warning");\n  if (iVar6 != 0) {\n    uVar11 = dcgettext(0,"Invalid --size-check= option: `%s\'",5);\n                    \n    FUN_0011c360(uVar11,__s1);\n  }\n  DAT_001638b0 = 1;\n  goto LAB_00107958;\n}" primitive_type (function_declarator "FUN_001077a0(uint param_1,long *param_2)" identifier (parameter_list "(uint param_1,long *param_2)" ( (parameter_declaration "uint param_1" type_identifier identifier) , (parameter_declaration "long *param_2" (sized_type_specifier "long" long) (pointer_declarator "*param_2" * identifier)) ))) (compound_statement "{\n  byte *pbVar1;\n  undefined1 (*pauVar2) [16];\n  size_t sVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  uint uVar8;\n  void *__ptr;\n  long *__ptr_00;\n  long *plVar9;\n  undefined8 uVar10;\n  undefined8 uVar11;\n  char *pcVar12;\n  long lVar13;\n  ulong uVar14;\n  long *plVar15;\n  undefined *puVar16;\n  undefined8 *puVar17;\n  undefined8 *puVar18;\n  long *__s;\n  char *__s1;\n  byte bVar19;\n  long *local_1a8;\n  uint local_1a0;\n  uint local_19c;\n  long local_198 [8];\n  stat local_158;\n  stat local_c8;\n  \n  bVar19 = 0;\n  local_1a8 = param_2;\n  local_19c = param_1;\n  _DAT_00162ec8 = FUN_0013a800();\n  FUN_0011c7a0();\n  setlocale(5,"");\n  setlocale(0,"");\n  bindtextdomain(&DAT_0013b28d,"/usr/share/locale");\n  textdomain(&DAT_0013b28d);\n  if (DAT_00162eac != 0) {\n    DAT_00162eb0 = 0x40;\n  }\n  DAT_00162ee8 = *local_1a8;\n  xmalloc_set_program_name();\n  FUN_0013a450(&local_19c,&local_1a8);\n  DAT_00163888 = "a.out";\n  hex_init();\n  bfd_init();\n  bfd_set_error_program_name(DAT_00162ee8);\n  __ptr = (void *)concat("-JLMRWZa::Dfg::I:o:vwX",PTR_s_O_g_G__0015a840,0);\n  __ptr_00 = (long *)xmalloc(DAT_0015a718 + 0x580);\n  puVar16 = PTR_s_alternate_0014e9c0;\n  __ptr_00[0xab] = DAT_0014ef18;\n  *__ptr_00 = (long)puVar16;\n  lVar13 = (long)__ptr_00 - (long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);\n  puVar17 = (undefined8 *)((long)&PTR_s_alternate_0014e9c0 - lVar13);\n  puVar18 = (undefined8 *)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);\n  for (uVar14 = (ulong)((int)lVar13 + 0x560U >> 3); sVar3 = DAT_0015a718, uVar14 != 0;\n      uVar14 = uVar14 - 1) {\n    *puVar18 = *puVar17;\n    puVar17 = puVar17 + (ulong)bVar19 * -2 + 1;\n    puVar18 = puVar18 + (ulong)bVar19 * -2 + 1;\n  }\n  memcpy(__ptr_00 + 0xac,&PTR_s_march_0015a740,DAT_0015a718);\n  uVar4 = local_19c;\n  __s = local_1a8;\n  pauVar2 = (undefined1 (*) [16])((long)__ptr_00 + sVar3 + 0x560);\n  *pauVar2 = (undefined1  [16])0x0;\n  plVar15 = (long *)&DAT_0013cb10;\n  pauVar2[1] = (undefined1  [16])0x0;\n  plVar9 = (long *)xmalloc((long)(int)(local_19c + 1) << 3);\n  local_1a0 = 1;\n  lVar13 = *__s;\n  plVar9[1] = 0;\n  *plVar9 = lVar13;\nLAB_00107958:\n  while( true ) {\n    uVar5 = getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8);\n    __s1 = (char *)(ulong)uVar5;\n    if (uVar5 == 0xffffffff) break;\n    if (uVar5 < 0xba) {\n                    \n                    \n      (*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();\n      return;\n    }\n    iVar6 = FUN_001347a0(__s1,optarg);\n    if (iVar6 == 0) {\n      if (uVar5 != 0x76) {\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    \n        exit(1);\n      }\n      if (DAT_00162ebc == 0) {\n        FUN_0010a980();\n      }\n      _DAT_00162ea8 = 1;\n    }\n  }\n  free(__ptr);\n  free(__ptr_00);\n  local_19c = local_1a0;\n  local_1a8 = plVar9;\n  FUN_00134ab0();\n  if (((1 < (int)local_19c) && (iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0)) &&\n     (1 < (int)local_19c)) {\n    lVar13 = 8;\n    iVar6 = 1;\n    do {\n      iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8);\n      pcVar12 = DAT_00163888;\n      if (((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))) {\n        DAT_00163888 = (char *)0x0;\n        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);\n        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    \n        FUN_0011c360(uVar10,uVar11,pcVar12);\n      }\n      iVar6 = iVar6 + 1;\n      lVar13 = lVar13 + 8;\n    } while (iVar6 < (int)local_19c);\n  }\n  FUN_0012a770();\n  FUN_00115310();\n  FUN_00125b60();\n  FUN_0011da80();\n  FUN_00116770();\n  FUN_00112f40();\n  FUN_0013abc0(FUN_0010a950);\n  if (DAT_00163940 != '\0') goto LAB_00108bff;\n  do {\n    FUN_0011a8a0(DAT_00162ec0,DAT_00163950,0,FUN_0010a810);\n    FUN_0011c840(DAT_00163888);\n    if (DAT_00163a50 == 0) {\n                    \n      FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7);\n    }\n    FUN_0012a810();\n    FUN_0010e380();\n    FUN_00126440(".gasversion.",0x15aad0,0x5a3d,&DAT_001638c0);\n    __ptr_00 = local_1a8;\n    uVar5 = local_19c;\n    while (local_1a8 = __ptr_00, local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0) {\n      uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800);\n      FUN_00129e10(uVar11);\n      FUN_00126560(uVar11);\n      puVar17 = (undefined8 *)*DAT_00162ed0;\n      free(DAT_00162ed0);\n      DAT_00162ed0 = puVar17;\n      __ptr_00 = local_1a8;\n      uVar5 = local_19c;\n    }\n    __s = (long *)(ulong)uVar5;\n    DAT_001637cc = 0;\n    DAT_00163930 = FUN_00125ca0(".text",0);\n    DAT_00163868 = FUN_00125ca0(".data",0);\n    DAT_001637d0 = FUN_00125ca0(&DAT_0013b3b5,0);\n    uVar8 = *(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163930,uVar8 & 0x1f);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163868,uVar8 & 0x27);\n    plVar15 = __ptr_00 + 1;\n    bfd_set_section_flags(DAT_00163a50,DAT_001637d0,uVar8 & 1);\n    pbVar1 = (byte *)(*(long *)(DAT_001637d0 + 0xa8) + 8);\n    *pbVar1 = *pbVar1 | 2;\n    FUN_00125ca0("*ABS*",0);\n    FUN_00125ca0(&DAT_0013b3c0,0);\n    DAT_00163898 = FUN_00125ca0("*GAS `reg\' section*",0);\n    DAT_001637c0 = FUN_00125ca0("*GAS `expr\' section*",0);\n    FUN_00125d00(DAT_00163930,0);\n    FUN_00132b90();\n    FUN_00135be0();\n    if (uVar5 == 1) {\nLAB_00108d46:\n      FUN_001239f0(&DAT_00142ab6);\n    }\n    else {\n      __s = __ptr_00 + (ulong)(uVar5 - 2) + 2;\n      __ptr_00 = (long *)0x0;\n      do {\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      } while (plVar15 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }\n    FUN_0010c560(0xffffffff);\n    if (DAT_00163878 != 0 || _DAT_001638a8 != 0) {\n      uVar11 = FUN_00125ca0(".note.GNU-stack",0);\n      bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18);\n    }\n    FUN_0010e390();\n    FUN_00111a40();\n    DAT_00162ee0 = 0;\n    iVar6 = FUN_00116d00();\n    if (iVar6 != 0) {\n      FUN_0012e000();\n      __s = local_198;\n      uVar5 = FUN_0011bf10();\n      __ptr_00 = (long *)(ulong)uVar5;\n      uVar8 = FUN_0011bf20();\n      plVar15 = (long *)(ulong)uVar8;\n      pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5);\n      sprintf((char *)__s,pcVar12,(ulong)uVar5);\n      pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5);\n      sprintf((char *)&local_c8,pcVar12,(ulong)uVar8);\n      if ((DAT_001637f4 != 0) && (uVar5 != 0)) {\n        if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }\n      }\n      if ((int)plVar15 == 0) {\n        DAT_00162ee0 = 1;\n      }\n      else if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }\n    }\n    fflush(stderr);\n    FUN_00117f20(DAT_00162ed8,param_2);\n    FUN_001167a0();\n    iVar6 = FUN_0011bf20();\n    if (iVar6 != 0) break;\n    FUN_0010c930();\n    xexit(0);\nLAB_00108bff:\n    FUN_0013abc0(FUN_0010a8a0);\n  } while( true );\n  xexit(1);\n  iVar6 = strcasecmp(__s1,"warning");\n  if (iVar6 != 0) {\n    uVar11 = dcgettext(0,"Invalid --size-check= option: `%s\'",5);\n                    \n    FUN_0011c360(uVar11,__s1);\n  }\n  DAT_001638b0 = 1;\n  goto LAB_00107958;\n}" { (declaration "byte *pbVar1;" type_identifier (pointer_declarator "*pbVar1" * identifier) ;) (expression_statement "undefined1 (*pauVar2) [16];" (subscript_expression "undefined1 (*pauVar2) [16]" (call_expression "undefined1 (*pauVar2)" identifier (argument_list "(*pauVar2)" ( (pointer_expression "*pauVar2" * identifier) ))) [ number_literal ]) ;) (declaration "size_t sVar3;" primitive_type identifier ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "uint uVar8;" type_identifier identifier ;) (declaration "void *__ptr;" primitive_type (pointer_declarator "*__ptr" * identifier) ;) (declaration "long *__ptr_00;" (sized_type_specifier "long" long) (pointer_declarator "*__ptr_00" * identifier) ;) (declaration "long *plVar9;" (sized_type_specifier "long" long) (pointer_declarator "*plVar9" * identifier) ;) (declaration "undefined8 uVar10;" type_identifier identifier ;) (declaration "undefined8 uVar11;" type_identifier identifier ;) (declaration "char *pcVar12;" primitive_type (pointer_declarator "*pcVar12" * identifier) ;) (declaration "long lVar13;" (sized_type_specifier "long" long) identifier ;) (declaration "ulong uVar14;" type_identifier identifier ;) (declaration "long *plVar15;" (sized_type_specifier "long" long) (pointer_declarator "*plVar15" * identifier) ;) (declaration "undefined *puVar16;" type_identifier (pointer_declarator "*puVar16" * identifier) ;) (declaration "undefined8 *puVar17;" type_identifier (pointer_declarator "*puVar17" * identifier) ;) (declaration "undefined8 *puVar18;" type_identifier (pointer_declarator "*puVar18" * identifier) ;) (declaration "long *__s;" (sized_type_specifier "long" long) (pointer_declarator "*__s" * identifier) ;) (declaration "char *__s1;" primitive_type (pointer_declarator "*__s1" * identifier) ;) (declaration "byte bVar19;" type_identifier identifier ;) (declaration "long *local_1a8;" (sized_type_specifier "long" long) (pointer_declarator "*local_1a8" * identifier) ;) (declaration "uint local_1a0;" type_identifier identifier ;) (declaration "uint local_19c;" type_identifier identifier ;) (declaration "long local_198 [8];" (sized_type_specifier "long" long) (array_declarator "local_198 [8]" identifier [ number_literal ]) ;) (declaration "stat local_158;" type_identifier identifier ;) (declaration "stat local_c8;" type_identifier identifier ;) (expression_statement "bVar19 = 0;" (assignment_expression "bVar19 = 0" identifier = number_literal) ;) (expression_statement "local_1a8 = param_2;" (assignment_expression "local_1a8 = param_2" identifier = identifier) ;) (expression_statement "local_19c = param_1;" (assignment_expression "local_19c = param_1" identifier = identifier) ;) (expression_statement "_DAT_00162ec8 = FUN_0013a800();" (assignment_expression "_DAT_00162ec8 = FUN_0013a800()" identifier = (call_expression "FUN_0013a800()" identifier (argument_list "()" ( )))) ;) (expression_statement "FUN_0011c7a0();" (call_expression "FUN_0011c7a0()" identifier (argument_list "()" ( ))) ;) (expression_statement "setlocale(5,"");" (call_expression "setlocale(5,"")" identifier (argument_list "(5,"")" ( number_literal , (string_literal """" " ") ))) ;) (expression_statement "setlocale(0,"");" (call_expression "setlocale(0,"")" identifier (argument_list "(0,"")" ( number_literal , (string_literal """" " ") ))) ;) (expression_statement "bindtextdomain(&DAT_0013b28d,"/usr/share/locale");" (call_expression "bindtextdomain(&DAT_0013b28d,"/usr/share/locale")" identifier (argument_list "(&DAT_0013b28d,"/usr/share/locale")" ( (pointer_expression "&DAT_0013b28d" & identifier) , (string_literal ""/usr/share/locale"" " string_content ") ))) ;) (expression_statement "textdomain(&DAT_0013b28d);" (call_expression "textdomain(&DAT_0013b28d)" identifier (argument_list "(&DAT_0013b28d)" ( (pointer_expression "&DAT_0013b28d" & identifier) ))) ;) (if_statement "if (DAT_00162eac != 0) {\n    DAT_00162eb0 = 0x40;\n  }" if (parenthesized_expression "(DAT_00162eac != 0)" ( (binary_expression "DAT_00162eac != 0" identifier != number_literal) )) (compound_statement "{\n    DAT_00162eb0 = 0x40;\n  }" { (expression_statement "DAT_00162eb0 = 0x40;" (assignment_expression "DAT_00162eb0 = 0x40" identifier = number_literal) ;) })) (expression_statement "DAT_00162ee8 = *local_1a8;" (assignment_expression "DAT_00162ee8 = *local_1a8" identifier = (pointer_expression "*local_1a8" * identifier)) ;) (expression_statement "xmalloc_set_program_name();" (call_expression "xmalloc_set_program_name()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_0013a450(&local_19c,&local_1a8);" (call_expression "FUN_0013a450(&local_19c,&local_1a8)" identifier (argument_list "(&local_19c,&local_1a8)" ( (pointer_expression "&local_19c" & identifier) , (pointer_expression "&local_1a8" & identifier) ))) ;) (expression_statement "DAT_00163888 = "a.out";" (assignment_expression "DAT_00163888 = "a.out"" identifier = (string_literal ""a.out"" " string_content ")) ;) (expression_statement "hex_init();" (call_expression "hex_init()" identifier (argument_list "()" ( ))) ;) (expression_statement "bfd_init();" (call_expression "bfd_init()" identifier (argument_list "()" ( ))) ;) (expression_statement "bfd_set_error_program_name(DAT_00162ee8);" (call_expression "bfd_set_error_program_name(DAT_00162ee8)" identifier (argument_list "(DAT_00162ee8)" ( identifier ))) ;) (expression_statement "__ptr = (void *)concat("-JLMRWZa::Dfg::I:o:vwX",PTR_s_O_g_G__0015a840,0);" (assignment_expression "__ptr = (void *)concat("-JLMRWZa::Dfg::I:o:vwX",PTR_s_O_g_G__0015a840,0)" identifier = (cast_expression "(void *)concat("-JLMRWZa::Dfg::I:o:vwX",PTR_s_O_g_G__0015a840,0)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "concat("-JLMRWZa::Dfg::I:o:vwX",PTR_s_O_g_G__0015a840,0)" identifier (argument_list "("-JLMRWZa::Dfg::I:o:vwX",PTR_s_O_g_G__0015a840,0)" ( (string_literal ""-JLMRWZa::Dfg::I:o:vwX"" " string_content ") , identifier , number_literal ))))) ;) (expression_statement "__ptr_00 = (long *)xmalloc(DAT_0015a718 + 0x580);" (assignment_expression "__ptr_00 = (long *)xmalloc(DAT_0015a718 + 0x580)" identifier = (cast_expression "(long *)xmalloc(DAT_0015a718 + 0x580)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(DAT_0015a718 + 0x580)" identifier (argument_list "(DAT_0015a718 + 0x580)" ( (binary_expression "DAT_0015a718 + 0x580" identifier + number_literal) ))))) ;) (expression_statement "puVar16 = PTR_s_alternate_0014e9c0;" (assignment_expression "puVar16 = PTR_s_alternate_0014e9c0" identifier = identifier) ;) (expression_statement "__ptr_00[0xab] = DAT_0014ef18;" (assignment_expression "__ptr_00[0xab] = DAT_0014ef18" (subscript_expression "__ptr_00[0xab]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*__ptr_00 = (long)puVar16;" (assignment_expression "*__ptr_00 = (long)puVar16" (pointer_expression "*__ptr_00" * identifier) = (cast_expression "(long)puVar16" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ;) (expression_statement "lVar13 = (long)__ptr_00 - (long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);" (assignment_expression "lVar13 = (long)__ptr_00 - (long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" identifier = (binary_expression "(long)__ptr_00 - (long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" (cast_expression "(long)__ptr_00" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (parenthesized_expression "((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" ( (binary_expression "(ulong)(__ptr_00 + 1) & 0xfffffffffffffff8" (call_expression "(ulong)(__ptr_00 + 1)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(__ptr_00 + 1)" ( (binary_expression "__ptr_00 + 1" identifier + number_literal) ))) & number_literal) ))))) ;) (expression_statement "puVar17 = (undefined8 *)((long)&PTR_s_alternate_0014e9c0 - lVar13);" (assignment_expression "puVar17 = (undefined8 *)((long)&PTR_s_alternate_0014e9c0 - lVar13)" identifier = (cast_expression "(undefined8 *)((long)&PTR_s_alternate_0014e9c0 - lVar13)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&PTR_s_alternate_0014e9c0 - lVar13)" ( (binary_expression "(long)&PTR_s_alternate_0014e9c0 - lVar13" (cast_expression "(long)&PTR_s_alternate_0014e9c0" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&PTR_s_alternate_0014e9c0" & identifier)) - identifier) )))) ;) (expression_statement "puVar18 = (undefined8 *)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);" (assignment_expression "puVar18 = (undefined8 *)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" identifier = (cast_expression "(undefined8 *)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" ( (binary_expression "(ulong)(__ptr_00 + 1) & 0xfffffffffffffff8" (call_expression "(ulong)(__ptr_00 + 1)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(__ptr_00 + 1)" ( (binary_expression "__ptr_00 + 1" identifier + number_literal) ))) & number_literal) )))) ;) (for_statement "for (uVar14 = (ulong)((int)lVar13 + 0x560U >> 3); sVar3 = DAT_0015a718, uVar14 != 0;\n      uVar14 = uVar14 - 1) {\n    *puVar18 = *puVar17;\n    puVar17 = puVar17 + (ulong)bVar19 * -2 + 1;\n    puVar18 = puVar18 + (ulong)bVar19 * -2 + 1;\n  }" for ( (assignment_expression "uVar14 = (ulong)((int)lVar13 + 0x560U >> 3)" identifier = (call_expression "(ulong)((int)lVar13 + 0x560U >> 3)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "((int)lVar13 + 0x560U >> 3)" ( (binary_expression "(int)lVar13 + 0x560U >> 3" (binary_expression "(int)lVar13 + 0x560U" (cast_expression "(int)lVar13" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) >> number_literal) )))) ; (comma_expression "sVar3 = DAT_0015a718, uVar14 != 0" (assignment_expression "sVar3 = DAT_0015a718" identifier = identifier) , (binary_expression "uVar14 != 0" identifier != number_literal)) ; (assignment_expression "uVar14 = uVar14 - 1" identifier = (binary_expression "uVar14 - 1" identifier - number_literal)) ) (compound_statement "{\n    *puVar18 = *puVar17;\n    puVar17 = puVar17 + (ulong)bVar19 * -2 + 1;\n    puVar18 = puVar18 + (ulong)bVar19 * -2 + 1;\n  }" { (expression_statement "*puVar18 = *puVar17;" (assignment_expression "*puVar18 = *puVar17" (pointer_expression "*puVar18" * identifier) = (pointer_expression "*puVar17" * identifier)) ;) (expression_statement "puVar17 = puVar17 + (ulong)bVar19 * -2 + 1;" (assignment_expression "puVar17 = puVar17 + (ulong)bVar19 * -2 + 1" identifier = (binary_expression "puVar17 + (ulong)bVar19 * -2 + 1" (binary_expression "puVar17 + (ulong)bVar19 * -2" identifier + (binary_expression "(ulong)bVar19 * -2" (cast_expression "(ulong)bVar19" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "puVar18 = puVar18 + (ulong)bVar19 * -2 + 1;" (assignment_expression "puVar18 = puVar18 + (ulong)bVar19 * -2 + 1" identifier = (binary_expression "puVar18 + (ulong)bVar19 * -2 + 1" (binary_expression "puVar18 + (ulong)bVar19 * -2" identifier + (binary_expression "(ulong)bVar19 * -2" (cast_expression "(ulong)bVar19" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) })) (expression_statement "memcpy(__ptr_00 + 0xac,&PTR_s_march_0015a740,DAT_0015a718);" (call_expression "memcpy(__ptr_00 + 0xac,&PTR_s_march_0015a740,DAT_0015a718)" identifier (argument_list "(__ptr_00 + 0xac,&PTR_s_march_0015a740,DAT_0015a718)" ( (binary_expression "__ptr_00 + 0xac" identifier + number_literal) , (pointer_expression "&PTR_s_march_0015a740" & identifier) , identifier ))) ;) (expression_statement "uVar4 = local_19c;" (assignment_expression "uVar4 = local_19c" identifier = identifier) ;) (expression_statement "__s = local_1a8;" (assignment_expression "__s = local_1a8" identifier = identifier) ;) (expression_statement "pauVar2 = (undefined1 (*) [16])((long)__ptr_00 + sVar3 + 0x560);" (assignment_expression "pauVar2 = (undefined1 (*) [16])((long)__ptr_00 + sVar3 + 0x560)" identifier = (cast_expression "(undefined1 (*) [16])((long)__ptr_00 + sVar3 + 0x560)" ( (type_descriptor "undefined1 (*) [16]" type_identifier (abstract_array_declarator "(*) [16]" (abstract_parenthesized_declarator "(*)" ( (abstract_pointer_declarator "*" *) )) [ number_literal ])) ) (parenthesized_expression "((long)__ptr_00 + sVar3 + 0x560)" ( (binary_expression "(long)__ptr_00 + sVar3 + 0x560" (binary_expression "(long)__ptr_00 + sVar3" (cast_expression "(long)__ptr_00" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) + number_literal) )))) ;) (expression_statement "*pauVar2 = (undefined1  [16])0x0;" (assignment_expression "*pauVar2 = (undefined1  [16])0x0" (pointer_expression "*pauVar2" * identifier) = (cast_expression "(undefined1  [16])0x0" ( (type_descriptor "undefined1  [16]" type_identifier (abstract_array_declarator "[16]" [ number_literal ])) ) number_literal)) ;) (expression_statement "plVar15 = (long *)&DAT_0013cb10;" (assignment_expression "plVar15 = (long *)&DAT_0013cb10" identifier = (cast_expression "(long *)&DAT_0013cb10" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_0013cb10" & identifier))) ;) (expression_statement "pauVar2[1] = (undefined1  [16])0x0;" (assignment_expression "pauVar2[1] = (undefined1  [16])0x0" (subscript_expression "pauVar2[1]" identifier [ number_literal ]) = (cast_expression "(undefined1  [16])0x0" ( (type_descriptor "undefined1  [16]" type_identifier (abstract_array_declarator "[16]" [ number_literal ])) ) number_literal)) ;) (expression_statement "plVar9 = (long *)xmalloc((long)(int)(local_19c + 1) << 3);" (assignment_expression "plVar9 = (long *)xmalloc((long)(int)(local_19c + 1) << 3)" identifier = (cast_expression "(long *)xmalloc((long)(int)(local_19c + 1) << 3)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc((long)(int)(local_19c + 1) << 3)" identifier (argument_list "((long)(int)(local_19c + 1) << 3)" ( (binary_expression "(long)(int)(local_19c + 1) << 3" (cast_expression "(long)(int)(local_19c + 1)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)(local_19c + 1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(local_19c + 1)" ( (binary_expression "local_19c + 1" identifier + number_literal) )))) << number_literal) ))))) ;) (expression_statement "local_1a0 = 1;" (assignment_expression "local_1a0 = 1" identifier = number_literal) ;) (expression_statement "lVar13 = *__s;" (assignment_expression "lVar13 = *__s" identifier = (pointer_expression "*__s" * identifier)) ;) (expression_statement "plVar9[1] = 0;" (assignment_expression "plVar9[1] = 0" (subscript_expression "plVar9[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "*plVar9 = lVar13;" (assignment_expression "*plVar9 = lVar13" (pointer_expression "*plVar9" * identifier) = identifier) ;) (labeled_statement "LAB_00107958:\n  while( true ) {\n    uVar5 = getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8);\n    __s1 = (char *)(ulong)uVar5;\n    if (uVar5 == 0xffffffff) break;\n    if (uVar5 < 0xba) {\n                    \n                    \n      (*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();\n      return;\n    }\n    iVar6 = FUN_001347a0(__s1,optarg);\n    if (iVar6 == 0) {\n      if (uVar5 != 0x76) {\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    \n        exit(1);\n      }\n      if (DAT_00162ebc == 0) {\n        FUN_0010a980();\n      }\n      _DAT_00162ea8 = 1;\n    }\n  }" statement_identifier : (while_statement "while( true ) {\n    uVar5 = getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8);\n    __s1 = (char *)(ulong)uVar5;\n    if (uVar5 == 0xffffffff) break;\n    if (uVar5 < 0xba) {\n                    \n                    \n      (*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();\n      return;\n    }\n    iVar6 = FUN_001347a0(__s1,optarg);\n    if (iVar6 == 0) {\n      if (uVar5 != 0x76) {\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    \n        exit(1);\n      }\n      if (DAT_00162ebc == 0) {\n        FUN_0010a980();\n      }\n      _DAT_00162ea8 = 1;\n    }\n  }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n    uVar5 = getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8);\n    __s1 = (char *)(ulong)uVar5;\n    if (uVar5 == 0xffffffff) break;\n    if (uVar5 < 0xba) {\n                    \n                    \n      (*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();\n      return;\n    }\n    iVar6 = FUN_001347a0(__s1,optarg);\n    if (iVar6 == 0) {\n      if (uVar5 != 0x76) {\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    \n        exit(1);\n      }\n      if (DAT_00162ebc == 0) {\n        FUN_0010a980();\n      }\n      _DAT_00162ea8 = 1;\n    }\n  }" { (expression_statement "uVar5 = getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8);" (assignment_expression "uVar5 = getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8)" identifier = (call_expression "getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8)" identifier (argument_list "(uVar4,__s,__ptr,__ptr_00,&local_c8)" ( identifier , identifier , identifier , identifier , (pointer_expression "&local_c8" & identifier) )))) ;) (expression_statement "__s1 = (char *)(ulong)uVar5;" (assignment_expression "__s1 = (char *)(ulong)uVar5" identifier = (cast_expression "(char *)(ulong)uVar5" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (if_statement "if (uVar5 == 0xffffffff) break;" if (parenthesized_expression "(uVar5 == 0xffffffff)" ( (binary_expression "uVar5 == 0xffffffff" identifier == number_literal) )) (break_statement "break;" break ;)) (if_statement "if (uVar5 < 0xba) {\n                    \n                    \n      (*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();\n      return;\n    }" if (parenthesized_expression "(uVar5 < 0xba)" ( (binary_expression "uVar5 < 0xba" identifier < number_literal) )) (compound_statement "{\n                    \n                    \n      (*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();\n      return;\n    }" { (expression_statement "(*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();" (call_expression "(*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))()" (parenthesized_expression "(*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))" ( (pointer_expression "*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15)" * (cast_expression "(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15)" ( (binary_expression "(long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15" (cast_expression "(long)*(int *)((long)plVar15 + (ulong)uVar5 * 4)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "*(int *)((long)plVar15 + (ulong)uVar5 * 4)" * (cast_expression "(int *)((long)plVar15 + (ulong)uVar5 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)plVar15 + (ulong)uVar5 * 4)" ( (binary_expression "(long)plVar15 + (ulong)uVar5 * 4" (cast_expression "(long)plVar15" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (binary_expression "(ulong)uVar5 * 4" (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) ))))) + (cast_expression "(long)plVar15" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) )) (argument_list "()" ( ))) ;) (return_statement "return;" return ;) })) (expression_statement "iVar6 = FUN_001347a0(__s1,optarg);" (assignment_expression "iVar6 = FUN_001347a0(__s1,optarg)" identifier = (call_expression "FUN_001347a0(__s1,optarg)" identifier (argument_list "(__s1,optarg)" ( identifier , identifier )))) ;) (if_statement "if (iVar6 == 0) {\n      if (uVar5 != 0x76) {\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    \n        exit(1);\n      }\n      if (DAT_00162ebc == 0) {\n        FUN_0010a980();\n      }\n      _DAT_00162ea8 = 1;\n    }" if (parenthesized_expression "(iVar6 == 0)" ( (binary_expression "iVar6 == 0" identifier == number_literal) )) (compound_statement "{\n      if (uVar5 != 0x76) {\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    \n        exit(1);\n      }\n      if (DAT_00162ebc == 0) {\n        FUN_0010a980();\n      }\n      _DAT_00162ea8 = 1;\n    }" { (if_statement "if (uVar5 != 0x76) {\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    \n        exit(1);\n      }" if (parenthesized_expression "(uVar5 != 0x76)" ( (binary_expression "uVar5 != 0x76" identifier != number_literal) )) (compound_statement "{\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    \n        exit(1);\n      }" { (expression_statement "puVar16 = optarg;" (assignment_expression "puVar16 = optarg" identifier = identifier) ;) (if_statement "if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }" if (parenthesized_expression "(optarg == (undefined *)0x0)" ( (binary_expression "optarg == (undefined *)0x0" identifier == (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          puVar16 = &DAT_00142ab6;\n        }" { (expression_statement "puVar16 = &DAT_00142ab6;" (assignment_expression "puVar16 = &DAT_00142ab6" identifier = (pointer_expression "&DAT_00142ab6" & identifier)) ;) })) (expression_statement "uVar11 = dcgettext(0,"unrecognized option -%c%s",5);" (assignment_expression "uVar11 = dcgettext(0,"unrecognized option -%c%s",5)" identifier = (call_expression "dcgettext(0,"unrecognized option -%c%s",5)" identifier (argument_list "(0,"unrecognized option -%c%s",5)" ( number_literal , (string_literal ""unrecognized option -%c%s"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_0011c1c0(uVar11,__s1,puVar16);" (call_expression "FUN_0011c1c0(uVar11,__s1,puVar16)" identifier (argument_list "(uVar11,__s1,puVar16)" ( identifier , identifier , identifier ))) ;) (expression_statement "exit(1);" (call_expression "exit(1)" identifier (argument_list "(1)" ( number_literal ))) ;) })) (if_statement "if (DAT_00162ebc == 0) {\n        FUN_0010a980();\n      }" if (parenthesized_expression "(DAT_00162ebc == 0)" ( (binary_expression "DAT_00162ebc == 0" identifier == number_literal) )) (compound_statement "{\n        FUN_0010a980();\n      }" { (expression_statement "FUN_0010a980();" (call_expression "FUN_0010a980()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "_DAT_00162ea8 = 1;" (assignment_expression "_DAT_00162ea8 = 1" identifier = number_literal) ;) })) }))) (expression_statement "free(__ptr);" (call_expression "free(__ptr)" identifier (argument_list "(__ptr)" ( identifier ))) ;) (expression_statement "free(__ptr_00);" (call_expression "free(__ptr_00)" identifier (argument_list "(__ptr_00)" ( identifier ))) ;) (expression_statement "local_19c = local_1a0;" (assignment_expression "local_19c = local_1a0" identifier = identifier) ;) (expression_statement "local_1a8 = plVar9;" (assignment_expression "local_1a8 = plVar9" identifier = identifier) ;) (expression_statement "FUN_00134ab0();" (call_expression "FUN_00134ab0()" identifier (argument_list "()" ( ))) ;) (if_statement "if (((1 < (int)local_19c) && (iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0)) &&\n     (1 < (int)local_19c)) {\n    lVar13 = 8;\n    iVar6 = 1;\n    do {\n      iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8);\n      pcVar12 = DAT_00163888;\n      if (((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))) {\n        DAT_00163888 = (char *)0x0;\n        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);\n        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    \n        FUN_0011c360(uVar10,uVar11,pcVar12);\n      }\n      iVar6 = iVar6 + 1;\n      lVar13 = lVar13 + 8;\n    } while (iVar6 < (int)local_19c);\n  }" if (parenthesized_expression "(((1 < (int)local_19c) && (iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0)) &&\n     (1 < (int)local_19c))" ( (binary_expression "((1 < (int)local_19c) && (iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0)) &&\n     (1 < (int)local_19c)" (parenthesized_expression "((1 < (int)local_19c) && (iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0))" ( (binary_expression "(1 < (int)local_19c) && (iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0)" (parenthesized_expression "(1 < (int)local_19c)" ( (binary_expression "1 < (int)local_19c" number_literal < (cast_expression "(int)local_19c" ( (type_descriptor "int" primitive_type) ) identifier)) )) && (parenthesized_expression "(iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0)" ( (comma_expression "iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0" (assignment_expression "iVar6 = __xstat(1,DAT_00163888,&local_158)" identifier = (call_expression "__xstat(1,DAT_00163888,&local_158)" identifier (argument_list "(1,DAT_00163888,&local_158)" ( number_literal , identifier , (pointer_expression "&local_158" & identifier) )))) , (binary_expression "iVar6 == 0" identifier == number_literal)) ))) )) && (parenthesized_expression "(1 < (int)local_19c)" ( (binary_expression "1 < (int)local_19c" number_literal < (cast_expression "(int)local_19c" ( (type_descriptor "int" primitive_type) ) identifier)) ))) )) (compound_statement "{\n    lVar13 = 8;\n    iVar6 = 1;\n    do {\n      iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8);\n      pcVar12 = DAT_00163888;\n      if (((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))) {\n        DAT_00163888 = (char *)0x0;\n        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);\n        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    \n        FUN_0011c360(uVar10,uVar11,pcVar12);\n      }\n      iVar6 = iVar6 + 1;\n      lVar13 = lVar13 + 8;\n    } while (iVar6 < (int)local_19c);\n  }" { (expression_statement "lVar13 = 8;" (assignment_expression "lVar13 = 8" identifier = number_literal) ;) (expression_statement "iVar6 = 1;" (assignment_expression "iVar6 = 1" identifier = number_literal) ;) (do_statement "do {\n      iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8);\n      pcVar12 = DAT_00163888;\n      if (((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))) {\n        DAT_00163888 = (char *)0x0;\n        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);\n        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    \n        FUN_0011c360(uVar10,uVar11,pcVar12);\n      }\n      iVar6 = iVar6 + 1;\n      lVar13 = lVar13 + 8;\n    } while (iVar6 < (int)local_19c);" do (compound_statement "{\n      iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8);\n      pcVar12 = DAT_00163888;\n      if (((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))) {\n        DAT_00163888 = (char *)0x0;\n        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);\n        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    \n        FUN_0011c360(uVar10,uVar11,pcVar12);\n      }\n      iVar6 = iVar6 + 1;\n      lVar13 = lVar13 + 8;\n    }" { (expression_statement "iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8);" (assignment_expression "iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8)" identifier = (call_expression "__xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8)" identifier (argument_list "(1,*(char **)((long)local_1a8 + lVar13),&local_c8)" ( number_literal , (pointer_expression "*(char **)((long)local_1a8 + lVar13)" * (cast_expression "(char **)((long)local_1a8 + lVar13)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((long)local_1a8 + lVar13)" ( (binary_expression "(long)local_1a8 + lVar13" (cast_expression "(long)local_1a8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) )))) , (pointer_expression "&local_c8" & identifier) )))) ;) (expression_statement "pcVar12 = DAT_00163888;" (assignment_expression "pcVar12 = DAT_00163888" identifier = identifier) ;) (if_statement "if (((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))) {\n        DAT_00163888 = (char *)0x0;\n        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);\n        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    \n        FUN_0011c360(uVar10,uVar11,pcVar12);\n      }" if (parenthesized_expression "(((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev))))" ( (binary_expression "((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))" (parenthesized_expression "((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino))" ( (binary_expression "(iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)" (parenthesized_expression "(iVar7 == 0)" ( (binary_expression "iVar7 == 0" identifier == number_literal) )) && (parenthesized_expression "(local_158.st_ino == local_c8.st_ino)" ( (binary_expression "local_158.st_ino == local_c8.st_ino" (field_expression "local_158.st_ino" identifier . field_identifier) == (field_expression "local_c8.st_ino" identifier . field_identifier)) ))) )) && (parenthesized_expression "((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))" ( (parenthesized_expression "(local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev))" ( (binary_expression "local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)" (binary_expression "local_c8.st_ino != 0" (field_expression "local_c8.st_ino" identifier . field_identifier) != number_literal) && (parenthesized_expression "(local_c8.st_dev == local_158.st_dev)" ( (binary_expression "local_c8.st_dev == local_158.st_dev" (field_expression "local_c8.st_dev" identifier . field_identifier) == (field_expression "local_158.st_dev" identifier . field_identifier)) ))) )) ))) )) (compound_statement "{\n        DAT_00163888 = (char *)0x0;\n        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);\n        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    \n        FUN_0011c360(uVar10,uVar11,pcVar12);\n      }" { (expression_statement "DAT_00163888 = (char *)0x0;" (assignment_expression "DAT_00163888 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);" (assignment_expression "uVar11 = *(undefined8 *)((long)local_1a8 + lVar13)" identifier = (pointer_expression "*(undefined8 *)((long)local_1a8 + lVar13)" * (cast_expression "(undefined8 *)((long)local_1a8 + lVar13)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)local_1a8 + lVar13)" ( (binary_expression "(long)local_1a8 + lVar13" (cast_expression "(long)local_1a8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) ))))) ;) (expression_statement "uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);" (assignment_expression "uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5)" identifier = (call_expression "dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5)" identifier (argument_list "(0,"The input \'%s\' and output \'%s\' files are the same",5)" ( number_literal , (string_literal ""The input \'%s\' and output \'%s\' files are the same"" " string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content ") , number_literal )))) ;) (expression_statement "FUN_0011c360(uVar10,uVar11,pcVar12);" (call_expression "FUN_0011c360(uVar10,uVar11,pcVar12)" identifier (argument_list "(uVar10,uVar11,pcVar12)" ( identifier , identifier , identifier ))) ;) })) (expression_statement "iVar6 = iVar6 + 1;" (assignment_expression "iVar6 = iVar6 + 1" identifier = (binary_expression "iVar6 + 1" identifier + number_literal)) ;) (expression_statement "lVar13 = lVar13 + 8;" (assignment_expression "lVar13 = lVar13 + 8" identifier = (binary_expression "lVar13 + 8" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar6 < (int)local_19c)" ( (binary_expression "iVar6 < (int)local_19c" identifier < (cast_expression "(int)local_19c" ( (type_descriptor "int" primitive_type) ) identifier)) )) ;) })) (expression_statement "FUN_0012a770();" (call_expression "FUN_0012a770()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_00115310();" (call_expression "FUN_00115310()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_00125b60();" (call_expression "FUN_00125b60()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_0011da80();" (call_expression "FUN_0011da80()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_00116770();" (call_expression "FUN_00116770()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_00112f40();" (call_expression "FUN_00112f40()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_0013abc0(FUN_0010a950);" (call_expression "FUN_0013abc0(FUN_0010a950)" identifier (argument_list "(FUN_0010a950)" ( identifier ))) ;) (if_statement "if (DAT_00163940 != '\0') goto LAB_00108bff;" if (parenthesized_expression "(DAT_00163940 != '\0')" ( (binary_expression "DAT_00163940 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_00108bff;" goto statement_identifier ;)) (do_statement "do {\n    FUN_0011a8a0(DAT_00162ec0,DAT_00163950,0,FUN_0010a810);\n    FUN_0011c840(DAT_00163888);\n    if (DAT_00163a50 == 0) {\n                    \n      FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7);\n    }\n    FUN_0012a810();\n    FUN_0010e380();\n    FUN_00126440(".gasversion.",0x15aad0,0x5a3d,&DAT_001638c0);\n    __ptr_00 = local_1a8;\n    uVar5 = local_19c;\n    while (local_1a8 = __ptr_00, local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0) {\n      uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800);\n      FUN_00129e10(uVar11);\n      FUN_00126560(uVar11);\n      puVar17 = (undefined8 *)*DAT_00162ed0;\n      free(DAT_00162ed0);\n      DAT_00162ed0 = puVar17;\n      __ptr_00 = local_1a8;\n      uVar5 = local_19c;\n    }\n    __s = (long *)(ulong)uVar5;\n    DAT_001637cc = 0;\n    DAT_00163930 = FUN_00125ca0(".text",0);\n    DAT_00163868 = FUN_00125ca0(".data",0);\n    DAT_001637d0 = FUN_00125ca0(&DAT_0013b3b5,0);\n    uVar8 = *(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163930,uVar8 & 0x1f);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163868,uVar8 & 0x27);\n    plVar15 = __ptr_00 + 1;\n    bfd_set_section_flags(DAT_00163a50,DAT_001637d0,uVar8 & 1);\n    pbVar1 = (byte *)(*(long *)(DAT_001637d0 + 0xa8) + 8);\n    *pbVar1 = *pbVar1 | 2;\n    FUN_00125ca0("*ABS*",0);\n    FUN_00125ca0(&DAT_0013b3c0,0);\n    DAT_00163898 = FUN_00125ca0("*GAS `reg\' section*",0);\n    DAT_001637c0 = FUN_00125ca0("*GAS `expr\' section*",0);\n    FUN_00125d00(DAT_00163930,0);\n    FUN_00132b90();\n    FUN_00135be0();\n    if (uVar5 == 1) {\nLAB_00108d46:\n      FUN_001239f0(&DAT_00142ab6);\n    }\n    else {\n      __s = __ptr_00 + (ulong)(uVar5 - 2) + 2;\n      __ptr_00 = (long *)0x0;\n      do {\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      } while (plVar15 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }\n    FUN_0010c560(0xffffffff);\n    if (DAT_00163878 != 0 || _DAT_001638a8 != 0) {\n      uVar11 = FUN_00125ca0(".note.GNU-stack",0);\n      bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18);\n    }\n    FUN_0010e390();\n    FUN_00111a40();\n    DAT_00162ee0 = 0;\n    iVar6 = FUN_00116d00();\n    if (iVar6 != 0) {\n      FUN_0012e000();\n      __s = local_198;\n      uVar5 = FUN_0011bf10();\n      __ptr_00 = (long *)(ulong)uVar5;\n      uVar8 = FUN_0011bf20();\n      plVar15 = (long *)(ulong)uVar8;\n      pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5);\n      sprintf((char *)__s,pcVar12,(ulong)uVar5);\n      pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5);\n      sprintf((char *)&local_c8,pcVar12,(ulong)uVar8);\n      if ((DAT_001637f4 != 0) && (uVar5 != 0)) {\n        if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }\n      }\n      if ((int)plVar15 == 0) {\n        DAT_00162ee0 = 1;\n      }\n      else if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }\n    }\n    fflush(stderr);\n    FUN_00117f20(DAT_00162ed8,param_2);\n    FUN_001167a0();\n    iVar6 = FUN_0011bf20();\n    if (iVar6 != 0) break;\n    FUN_0010c930();\n    xexit(0);\nLAB_00108bff:\n    FUN_0013abc0(FUN_0010a8a0);\n  } while( true );" do (compound_statement "{\n    FUN_0011a8a0(DAT_00162ec0,DAT_00163950,0,FUN_0010a810);\n    FUN_0011c840(DAT_00163888);\n    if (DAT_00163a50 == 0) {\n                    \n      FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7);\n    }\n    FUN_0012a810();\n    FUN_0010e380();\n    FUN_00126440(".gasversion.",0x15aad0,0x5a3d,&DAT_001638c0);\n    __ptr_00 = local_1a8;\n    uVar5 = local_19c;\n    while (local_1a8 = __ptr_00, local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0) {\n      uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800);\n      FUN_00129e10(uVar11);\n      FUN_00126560(uVar11);\n      puVar17 = (undefined8 *)*DAT_00162ed0;\n      free(DAT_00162ed0);\n      DAT_00162ed0 = puVar17;\n      __ptr_00 = local_1a8;\n      uVar5 = local_19c;\n    }\n    __s = (long *)(ulong)uVar5;\n    DAT_001637cc = 0;\n    DAT_00163930 = FUN_00125ca0(".text",0);\n    DAT_00163868 = FUN_00125ca0(".data",0);\n    DAT_001637d0 = FUN_00125ca0(&DAT_0013b3b5,0);\n    uVar8 = *(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163930,uVar8 & 0x1f);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163868,uVar8 & 0x27);\n    plVar15 = __ptr_00 + 1;\n    bfd_set_section_flags(DAT_00163a50,DAT_001637d0,uVar8 & 1);\n    pbVar1 = (byte *)(*(long *)(DAT_001637d0 + 0xa8) + 8);\n    *pbVar1 = *pbVar1 | 2;\n    FUN_00125ca0("*ABS*",0);\n    FUN_00125ca0(&DAT_0013b3c0,0);\n    DAT_00163898 = FUN_00125ca0("*GAS `reg\' section*",0);\n    DAT_001637c0 = FUN_00125ca0("*GAS `expr\' section*",0);\n    FUN_00125d00(DAT_00163930,0);\n    FUN_00132b90();\n    FUN_00135be0();\n    if (uVar5 == 1) {\nLAB_00108d46:\n      FUN_001239f0(&DAT_00142ab6);\n    }\n    else {\n      __s = __ptr_00 + (ulong)(uVar5 - 2) + 2;\n      __ptr_00 = (long *)0x0;\n      do {\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      } while (plVar15 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }\n    FUN_0010c560(0xffffffff);\n    if (DAT_00163878 != 0 || _DAT_001638a8 != 0) {\n      uVar11 = FUN_00125ca0(".note.GNU-stack",0);\n      bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18);\n    }\n    FUN_0010e390();\n    FUN_00111a40();\n    DAT_00162ee0 = 0;\n    iVar6 = FUN_00116d00();\n    if (iVar6 != 0) {\n      FUN_0012e000();\n      __s = local_198;\n      uVar5 = FUN_0011bf10();\n      __ptr_00 = (long *)(ulong)uVar5;\n      uVar8 = FUN_0011bf20();\n      plVar15 = (long *)(ulong)uVar8;\n      pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5);\n      sprintf((char *)__s,pcVar12,(ulong)uVar5);\n      pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5);\n      sprintf((char *)&local_c8,pcVar12,(ulong)uVar8);\n      if ((DAT_001637f4 != 0) && (uVar5 != 0)) {\n        if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }\n      }\n      if ((int)plVar15 == 0) {\n        DAT_00162ee0 = 1;\n      }\n      else if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }\n    }\n    fflush(stderr);\n    FUN_00117f20(DAT_00162ed8,param_2);\n    FUN_001167a0();\n    iVar6 = FUN_0011bf20();\n    if (iVar6 != 0) break;\n    FUN_0010c930();\n    xexit(0);\nLAB_00108bff:\n    FUN_0013abc0(FUN_0010a8a0);\n  }" { (expression_statement "FUN_0011a8a0(DAT_00162ec0,DAT_00163950,0,FUN_0010a810);" (call_expression "FUN_0011a8a0(DAT_00162ec0,DAT_00163950,0,FUN_0010a810)" identifier (argument_list "(DAT_00162ec0,DAT_00163950,0,FUN_0010a810)" ( identifier , identifier , number_literal , identifier ))) ;) (expression_statement "FUN_0011c840(DAT_00163888);" (call_expression "FUN_0011c840(DAT_00163888)" identifier (argument_list "(DAT_00163888)" ( identifier ))) ;) (if_statement "if (DAT_00163a50 == 0) {\n                    \n      FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7);\n    }" if (parenthesized_expression "(DAT_00163a50 == 0)" ( (binary_expression "DAT_00163a50 == 0" identifier == number_literal) )) (compound_statement "{\n                    \n      FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7);\n    }" { (expression_statement "FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7);" (call_expression "FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7)" identifier (argument_list "("../../gas/as.c",0x519,&DAT_0013cef7)" ( (string_literal ""../../gas/as.c"" " string_content ") , number_literal , (pointer_expression "&DAT_0013cef7" & identifier) ))) ;) })) (expression_statement "FUN_0012a810();" (call_expression "FUN_0012a810()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_0010e380();" (call_expression "FUN_0010e380()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_00126440(".gasversion.",0x15aad0,0x5a3d,&DAT_001638c0);" (call_expression "FUN_00126440(".gasversion.",0x15aad0,0x5a3d,&DAT_001638c0)" identifier (argument_list "(".gasversion.",0x15aad0,0x5a3d,&DAT_001638c0)" ( (string_literal "".gasversion."" " string_content ") , number_literal , number_literal , (pointer_expression "&DAT_001638c0" & identifier) ))) ;) (expression_statement "__ptr_00 = local_1a8;" (assignment_expression "__ptr_00 = local_1a8" identifier = identifier) ;) (expression_statement "uVar5 = local_19c;" (assignment_expression "uVar5 = local_19c" identifier = identifier) ;) (while_statement "while (local_1a8 = __ptr_00, local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0) {\n      uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800);\n      FUN_00129e10(uVar11);\n      FUN_00126560(uVar11);\n      puVar17 = (undefined8 *)*DAT_00162ed0;\n      free(DAT_00162ed0);\n      DAT_00162ed0 = puVar17;\n      __ptr_00 = local_1a8;\n      uVar5 = local_19c;\n    }" while (parenthesized_expression "(local_1a8 = __ptr_00, local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0)" ( (comma_expression "local_1a8 = __ptr_00, local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0" (assignment_expression "local_1a8 = __ptr_00" identifier = identifier) , (comma_expression "local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0" (assignment_expression "local_19c = uVar5" identifier = identifier) , (binary_expression "DAT_00162ed0 != (undefined8 *)0x0" identifier != (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)))) )) (compound_statement "{\n      uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800);\n      FUN_00129e10(uVar11);\n      FUN_00126560(uVar11);\n      puVar17 = (undefined8 *)*DAT_00162ed0;\n      free(DAT_00162ed0);\n      DAT_00162ed0 = puVar17;\n      __ptr_00 = local_1a8;\n      uVar5 = local_19c;\n    }" { (expression_statement "uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800);" (assignment_expression "uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800)" identifier = (call_expression "FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800)" identifier (argument_list "(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800)" ( (subscript_expression "DAT_00162ed0[1]" identifier [ number_literal ]) , number_literal , (subscript_expression "DAT_00162ed0[2]" identifier [ number_literal ]) , (pointer_expression "&DAT_00163800" & identifier) )))) ;) (expression_statement "FUN_00129e10(uVar11);" (call_expression "FUN_00129e10(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (expression_statement "FUN_00126560(uVar11);" (call_expression "FUN_00126560(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (expression_statement "puVar17 = (undefined8 *)*DAT_00162ed0;" (assignment_expression "puVar17 = (undefined8 *)*DAT_00162ed0" identifier = (cast_expression "(undefined8 *)*DAT_00162ed0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*DAT_00162ed0" * identifier))) ;) (expression_statement "free(DAT_00162ed0);" (call_expression "free(DAT_00162ed0)" identifier (argument_list "(DAT_00162ed0)" ( identifier ))) ;) (expression_statement "DAT_00162ed0 = puVar17;" (assignment_expression "DAT_00162ed0 = puVar17" identifier = identifier) ;) (expression_statement "__ptr_00 = local_1a8;" (assignment_expression "__ptr_00 = local_1a8" identifier = identifier) ;) (expression_statement "uVar5 = local_19c;" (assignment_expression "uVar5 = local_19c" identifier = identifier) ;) })) (expression_statement "__s = (long *)(ulong)uVar5;" (assignment_expression "__s = (long *)(ulong)uVar5" identifier = (cast_expression "(long *)(ulong)uVar5" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "DAT_001637cc = 0;" (assignment_expression "DAT_001637cc = 0" identifier = number_literal) ;) (expression_statement "DAT_00163930 = FUN_00125ca0(".text",0);" (assignment_expression "DAT_00163930 = FUN_00125ca0(".text",0)" identifier = (call_expression "FUN_00125ca0(".text",0)" identifier (argument_list "(".text",0)" ( (string_literal "".text"" " string_content ") , number_literal )))) ;) (expression_statement "DAT_00163868 = FUN_00125ca0(".data",0);" (assignment_expression "DAT_00163868 = FUN_00125ca0(".data",0)" identifier = (call_expression "FUN_00125ca0(".data",0)" identifier (argument_list "(".data",0)" ( (string_literal "".data"" " string_content ") , number_literal )))) ;) (expression_statement "DAT_001637d0 = FUN_00125ca0(&DAT_0013b3b5,0);" (assignment_expression "DAT_001637d0 = FUN_00125ca0(&DAT_0013b3b5,0)" identifier = (call_expression "FUN_00125ca0(&DAT_0013b3b5,0)" identifier (argument_list "(&DAT_0013b3b5,0)" ( (pointer_expression "&DAT_0013b3b5" & identifier) , number_literal )))) ;) (expression_statement "uVar8 = *(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18);" (assignment_expression "uVar8 = *(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18)" identifier = (pointer_expression "*(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18)" * (cast_expression "(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(DAT_00163a50 + 8) + 0x18)" ( (binary_expression "*(long *)(DAT_00163a50 + 8) + 0x18" (pointer_expression "*(long *)(DAT_00163a50 + 8)" * (cast_expression "(long *)(DAT_00163a50 + 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_00163a50 + 8)" ( (binary_expression "DAT_00163a50 + 8" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "bfd_set_section_flags(DAT_00163a50,DAT_00163930,uVar8 & 0x1f);" (call_expression "bfd_set_section_flags(DAT_00163a50,DAT_00163930,uVar8 & 0x1f)" identifier (argument_list "(DAT_00163a50,DAT_00163930,uVar8 & 0x1f)" ( identifier , identifier , (binary_expression "uVar8 & 0x1f" identifier & number_literal) ))) ;) (expression_statement "bfd_set_section_flags(DAT_00163a50,DAT_00163868,uVar8 & 0x27);" (call_expression "bfd_set_section_flags(DAT_00163a50,DAT_00163868,uVar8 & 0x27)" identifier (argument_list "(DAT_00163a50,DAT_00163868,uVar8 & 0x27)" ( identifier , identifier , (binary_expression "uVar8 & 0x27" identifier & number_literal) ))) ;) (expression_statement "plVar15 = __ptr_00 + 1;" (assignment_expression "plVar15 = __ptr_00 + 1" identifier = (binary_expression "__ptr_00 + 1" identifier + number_literal)) ;) (expression_statement "bfd_set_section_flags(DAT_00163a50,DAT_001637d0,uVar8 & 1);" (call_expression "bfd_set_section_flags(DAT_00163a50,DAT_001637d0,uVar8 & 1)" identifier (argument_list "(DAT_00163a50,DAT_001637d0,uVar8 & 1)" ( identifier , identifier , (binary_expression "uVar8 & 1" identifier & number_literal) ))) ;) (expression_statement "pbVar1 = (byte *)(*(long *)(DAT_001637d0 + 0xa8) + 8);" (assignment_expression "pbVar1 = (byte *)(*(long *)(DAT_001637d0 + 0xa8) + 8)" identifier = (cast_expression "(byte *)(*(long *)(DAT_001637d0 + 0xa8) + 8)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(DAT_001637d0 + 0xa8) + 8)" ( (binary_expression "*(long *)(DAT_001637d0 + 0xa8) + 8" (pointer_expression "*(long *)(DAT_001637d0 + 0xa8)" * (cast_expression "(long *)(DAT_001637d0 + 0xa8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_001637d0 + 0xa8)" ( (binary_expression "DAT_001637d0 + 0xa8" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "*pbVar1 = *pbVar1 | 2;" (assignment_expression "*pbVar1 = *pbVar1 | 2" (pointer_expression "*pbVar1" * identifier) = (binary_expression "*pbVar1 | 2" (pointer_expression "*pbVar1" * identifier) | number_literal)) ;) (expression_statement "FUN_00125ca0("*ABS*",0);" (call_expression "FUN_00125ca0("*ABS*",0)" identifier (argument_list "("*ABS*",0)" ( (string_literal ""*ABS*"" " string_content ") , number_literal ))) ;) (expression_statement "FUN_00125ca0(&DAT_0013b3c0,0);" (call_expression "FUN_00125ca0(&DAT_0013b3c0,0)" identifier (argument_list "(&DAT_0013b3c0,0)" ( (pointer_expression "&DAT_0013b3c0" & identifier) , number_literal ))) ;) (expression_statement "DAT_00163898 = FUN_00125ca0("*GAS `reg\' section*",0);" (assignment_expression "DAT_00163898 = FUN_00125ca0("*GAS `reg\' section*",0)" identifier = (call_expression "FUN_00125ca0("*GAS `reg\' section*",0)" identifier (argument_list "("*GAS `reg\' section*",0)" ( (string_literal ""*GAS `reg\' section*"" " string_content escape_sequence string_content ") , number_literal )))) ;) (expression_statement "DAT_001637c0 = FUN_00125ca0("*GAS `expr\' section*",0);" (assignment_expression "DAT_001637c0 = FUN_00125ca0("*GAS `expr\' section*",0)" identifier = (call_expression "FUN_00125ca0("*GAS `expr\' section*",0)" identifier (argument_list "("*GAS `expr\' section*",0)" ( (string_literal ""*GAS `expr\' section*"" " string_content escape_sequence string_content ") , number_literal )))) ;) (expression_statement "FUN_00125d00(DAT_00163930,0);" (call_expression "FUN_00125d00(DAT_00163930,0)" identifier (argument_list "(DAT_00163930,0)" ( identifier , number_literal ))) ;) (expression_statement "FUN_00132b90();" (call_expression "FUN_00132b90()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_00135be0();" (call_expression "FUN_00135be0()" identifier (argument_list "()" ( ))) ;) (if_statement "if (uVar5 == 1) {\nLAB_00108d46:\n      FUN_001239f0(&DAT_00142ab6);\n    }\n    else {\n      __s = __ptr_00 + (ulong)(uVar5 - 2) + 2;\n      __ptr_00 = (long *)0x0;\n      do {\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      } while (plVar15 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }" if (parenthesized_expression "(uVar5 == 1)" ( (binary_expression "uVar5 == 1" identifier == number_literal) )) (compound_statement "{\nLAB_00108d46:\n      FUN_001239f0(&DAT_00142ab6);\n    }" { (labeled_statement "LAB_00108d46:\n      FUN_001239f0(&DAT_00142ab6);" statement_identifier : (expression_statement "FUN_001239f0(&DAT_00142ab6);" (call_expression "FUN_001239f0(&DAT_00142ab6)" identifier (argument_list "(&DAT_00142ab6)" ( (pointer_expression "&DAT_00142ab6" & identifier) ))) ;)) }) (else_clause "else {\n      __s = __ptr_00 + (ulong)(uVar5 - 2) + 2;\n      __ptr_00 = (long *)0x0;\n      do {\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      } while (plVar15 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }" else (compound_statement "{\n      __s = __ptr_00 + (ulong)(uVar5 - 2) + 2;\n      __ptr_00 = (long *)0x0;\n      do {\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      } while (plVar15 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }" { (expression_statement "__s = __ptr_00 + (ulong)(uVar5 - 2) + 2;" (assignment_expression "__s = __ptr_00 + (ulong)(uVar5 - 2) + 2" identifier = (binary_expression "__ptr_00 + (ulong)(uVar5 - 2) + 2" (binary_expression "__ptr_00 + (ulong)(uVar5 - 2)" identifier + (call_expression "(ulong)(uVar5 - 2)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar5 - 2)" ( (binary_expression "uVar5 - 2" identifier - number_literal) )))) + number_literal)) ;) (expression_statement "__ptr_00 = (long *)0x0;" (assignment_expression "__ptr_00 = (long *)0x0" identifier = (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      } while (plVar15 != __s);" do (compound_statement "{\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      }" { (if_statement "if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }" if (parenthesized_expression "(*plVar15 != 0)" ( (binary_expression "*plVar15 != 0" (pointer_expression "*plVar15" * identifier) != number_literal) )) (compound_statement "{\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }" { (expression_statement "__ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);" (assignment_expression "__ptr_00 = (long *)(ulong)((int)__ptr_00 + 1)" identifier = (cast_expression "(long *)(ulong)((int)__ptr_00 + 1)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (call_expression "(ulong)((int)__ptr_00 + 1)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "((int)__ptr_00 + 1)" ( (binary_expression "(int)__ptr_00 + 1" (cast_expression "(int)__ptr_00" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "FUN_001239f0();" (call_expression "FUN_001239f0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "plVar15 = plVar15 + 1;" (assignment_expression "plVar15 = plVar15 + 1" identifier = (binary_expression "plVar15 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(plVar15 != __s)" ( (binary_expression "plVar15 != __s" identifier != identifier) )) ;) (if_statement "if ((int)__ptr_00 == 0) goto LAB_00108d46;" if (parenthesized_expression "((int)__ptr_00 == 0)" ( (binary_expression "(int)__ptr_00 == 0" (cast_expression "(int)__ptr_00" ( (type_descriptor "int" primitive_type) ) identifier) == number_literal) )) (goto_statement "goto LAB_00108d46;" goto statement_identifier ;)) }))) (expression_statement "FUN_0010c560(0xffffffff);" (call_expression "FUN_0010c560(0xffffffff)" identifier (argument_list "(0xffffffff)" ( number_literal ))) ;) (if_statement "if (DAT_00163878 != 0 || _DAT_001638a8 != 0) {\n      uVar11 = FUN_00125ca0(".note.GNU-stack",0);\n      bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18);\n    }" if (parenthesized_expression "(DAT_00163878 != 0 || _DAT_001638a8 != 0)" ( (binary_expression "DAT_00163878 != 0 || _DAT_001638a8 != 0" (binary_expression "DAT_00163878 != 0" identifier != number_literal) || (binary_expression "_DAT_001638a8 != 0" identifier != number_literal)) )) (compound_statement "{\n      uVar11 = FUN_00125ca0(".note.GNU-stack",0);\n      bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18);\n    }" { (expression_statement "uVar11 = FUN_00125ca0(".note.GNU-stack",0);" (assignment_expression "uVar11 = FUN_00125ca0(".note.GNU-stack",0)" identifier = (call_expression "FUN_00125ca0(".note.GNU-stack",0)" identifier (argument_list "(".note.GNU-stack",0)" ( (string_literal "".note.GNU-stack"" " string_content ") , number_literal )))) ;) (expression_statement "bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18);" (call_expression "bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18)" identifier (argument_list "(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18)" ( identifier , identifier , (binary_expression "(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18" (parenthesized_expression "(-(uint)(DAT_00163878 == 0) & 0xfffffff0)" ( (binary_expression "-(uint)(DAT_00163878 == 0) & 0xfffffff0" (unary_expression "-(uint)(DAT_00163878 == 0)" - (call_expression "(uint)(DAT_00163878 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(DAT_00163878 == 0)" ( (binary_expression "DAT_00163878 == 0" identifier == number_literal) )))) & number_literal) )) + number_literal) ))) ;) })) (expression_statement "FUN_0010e390();" (call_expression "FUN_0010e390()" identifier (argument_list "()" ( ))) ;) (expression_statement "FUN_00111a40();" (call_expression "FUN_00111a40()" identifier (argument_list "()" ( ))) ;) (expression_statement "DAT_00162ee0 = 0;" (assignment_expression "DAT_00162ee0 = 0" identifier = number_literal) ;) (expression_statement "iVar6 = FUN_00116d00();" (assignment_expression "iVar6 = FUN_00116d00()" identifier = (call_expression "FUN_00116d00()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar6 != 0) {\n      FUN_0012e000();\n      __s = local_198;\n      uVar5 = FUN_0011bf10();\n      __ptr_00 = (long *)(ulong)uVar5;\n      uVar8 = FUN_0011bf20();\n      plVar15 = (long *)(ulong)uVar8;\n      pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5);\n      sprintf((char *)__s,pcVar12,(ulong)uVar5);\n      pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5);\n      sprintf((char *)&local_c8,pcVar12,(ulong)uVar8);\n      if ((DAT_001637f4 != 0) && (uVar5 != 0)) {\n        if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }\n      }\n      if ((int)plVar15 == 0) {\n        DAT_00162ee0 = 1;\n      }\n      else if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }\n    }" if (parenthesized_expression "(iVar6 != 0)" ( (binary_expression "iVar6 != 0" identifier != number_literal) )) (compound_statement "{\n      FUN_0012e000();\n      __s = local_198;\n      uVar5 = FUN_0011bf10();\n      __ptr_00 = (long *)(ulong)uVar5;\n      uVar8 = FUN_0011bf20();\n      plVar15 = (long *)(ulong)uVar8;\n      pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5);\n      sprintf((char *)__s,pcVar12,(ulong)uVar5);\n      pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5);\n      sprintf((char *)&local_c8,pcVar12,(ulong)uVar8);\n      if ((DAT_001637f4 != 0) && (uVar5 != 0)) {\n        if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }\n      }\n      if ((int)plVar15 == 0) {\n        DAT_00162ee0 = 1;\n      }\n      else if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }\n    }" { (expression_statement "FUN_0012e000();" (call_expression "FUN_0012e000()" identifier (argument_list "()" ( ))) ;) (expression_statement "__s = local_198;" (assignment_expression "__s = local_198" identifier = identifier) ;) (expression_statement "uVar5 = FUN_0011bf10();" (assignment_expression "uVar5 = FUN_0011bf10()" identifier = (call_expression "FUN_0011bf10()" identifier (argument_list "()" ( )))) ;) (expression_statement "__ptr_00 = (long *)(ulong)uVar5;" (assignment_expression "__ptr_00 = (long *)(ulong)uVar5" identifier = (cast_expression "(long *)(ulong)uVar5" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "uVar8 = FUN_0011bf20();" (assignment_expression "uVar8 = FUN_0011bf20()" identifier = (call_expression "FUN_0011bf20()" identifier (argument_list "()" ( )))) ;) (expression_statement "plVar15 = (long *)(ulong)uVar8;" (assignment_expression "plVar15 = (long *)(ulong)uVar8" identifier = (cast_expression "(long *)(ulong)uVar8" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (cast_expression "(ulong)uVar8" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5);" (assignment_expression "pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5)" identifier = (cast_expression "(char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5)" identifier (argument_list "(0,"%d warning","%d warnings",(long)(int)uVar5,5)" ( number_literal , (string_literal ""%d warning"" " string_content ") , (string_literal ""%d warnings"" " string_content ") , (cast_expression "(long)(int)uVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)uVar5" ( (type_descriptor "int" primitive_type) ) identifier)) , number_literal ))))) ;) (expression_statement "sprintf((char *)__s,pcVar12,(ulong)uVar5);" (call_expression "sprintf((char *)__s,pcVar12,(ulong)uVar5)" identifier (argument_list "((char *)__s,pcVar12,(ulong)uVar5)" ( (cast_expression "(char *)__s" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , identifier , (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier) ))) ;) (expression_statement "pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5);" (assignment_expression "pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5)" identifier = (cast_expression "(char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5)" identifier (argument_list "(0,"%d error","%d errors",(long)(int)uVar8,5)" ( number_literal , (string_literal ""%d error"" " string_content ") , (string_literal ""%d errors"" " string_content ") , (cast_expression "(long)(int)uVar8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)uVar8" ( (type_descriptor "int" primitive_type) ) identifier)) , number_literal ))))) ;) (expression_statement "sprintf((char *)&local_c8,pcVar12,(ulong)uVar8);" (call_expression "sprintf((char *)&local_c8,pcVar12,(ulong)uVar8)" identifier (argument_list "((char *)&local_c8,pcVar12,(ulong)uVar8)" ( (cast_expression "(char *)&local_c8" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_c8" & identifier)) , identifier , (cast_expression "(ulong)uVar8" ( (type_descriptor "ulong" type_identifier) ) identifier) ))) ;) (if_statement "if ((DAT_001637f4 != 0) && (uVar5 != 0)) {\n        if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }\n      }" if (parenthesized_expression "((DAT_001637f4 != 0) && (uVar5 != 0))" ( (binary_expression "(DAT_001637f4 != 0) && (uVar5 != 0)" (parenthesized_expression "(DAT_001637f4 != 0)" ( (binary_expression "DAT_001637f4 != 0" identifier != number_literal) )) && (parenthesized_expression "(uVar5 != 0)" ( (binary_expression "uVar5 != 0" identifier != number_literal) ))) )) (compound_statement "{\n        if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }\n      }" { (if_statement "if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }" if (parenthesized_expression "(uVar8 == 0)" ( (binary_expression "uVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }" { (expression_statement "plVar15 = (long *)(ulong)uVar5;" (assignment_expression "plVar15 = (long *)(ulong)uVar5" identifier = (cast_expression "(long *)(ulong)uVar5" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "uVar11 = dcgettext(0,"%s, treating warnings as errors",5);" (assignment_expression "uVar11 = dcgettext(0,"%s, treating warnings as errors",5)" identifier = (call_expression "dcgettext(0,"%s, treating warnings as errors",5)" identifier (argument_list "(0,"%s, treating warnings as errors",5)" ( number_literal , (string_literal ""%s, treating warnings as errors"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_0011c1c0(uVar11,__s);" (call_expression "FUN_0011c1c0(uVar11,__s)" identifier (argument_list "(uVar11,__s)" ( identifier , identifier ))) ;) }) (else_clause "else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }" else (compound_statement "{\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }" { (expression_statement "plVar15 = (long *)(ulong)(uVar8 + uVar5);" (assignment_expression "plVar15 = (long *)(ulong)(uVar8 + uVar5)" identifier = (cast_expression "(long *)(ulong)(uVar8 + uVar5)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (call_expression "(ulong)(uVar8 + uVar5)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar8 + uVar5)" ( (binary_expression "uVar8 + uVar5" identifier + identifier) ))))) ;) }))) })) (if_statement "if ((int)plVar15 == 0) {\n        DAT_00162ee0 = 1;\n      }\n      else if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }" if (parenthesized_expression "((int)plVar15 == 0)" ( (binary_expression "(int)plVar15 == 0" (cast_expression "(int)plVar15" ( (type_descriptor "int" primitive_type) ) identifier) == number_literal) )) (compound_statement "{\n        DAT_00162ee0 = 1;\n      }" { (expression_statement "DAT_00162ee0 = 1;" (assignment_expression "DAT_00162ee0 = 1" identifier = number_literal) ;) }) (else_clause "else if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }" else (if_statement "if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }" if (parenthesized_expression "(DAT_00163870 != '\0')" ( (binary_expression "DAT_00163870 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }" { (expression_statement "DAT_00162ee0 = 1;" (assignment_expression "DAT_00162ee0 = 1" identifier = number_literal) ;) (expression_statement "pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);" (assignment_expression "pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"%s, %s, generating bad object file\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"%s, %s, generating bad object file\n",5)" identifier (argument_list "(0,"%s, %s, generating bad object file\n",5)" ( number_literal , (string_literal ""%s, %s, generating bad object file\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "fprintf(stderr,pcVar12,&local_c8,__s);" (call_expression "fprintf(stderr,pcVar12,&local_c8,__s)" identifier (argument_list "(stderr,pcVar12,&local_c8,__s)" ( identifier , identifier , (pointer_expression "&local_c8" & identifier) , identifier ))) ;) })))) })) (expression_statement "fflush(stderr);" (call_expression "fflush(stderr)" identifier (argument_list "(stderr)" ( identifier ))) ;) (expression_statement "FUN_00117f20(DAT_00162ed8,param_2);" (call_expression "FUN_00117f20(DAT_00162ed8,param_2)" identifier (argument_list "(DAT_00162ed8,param_2)" ( identifier , identifier ))) ;) (expression_statement "FUN_001167a0();" (call_expression "FUN_001167a0()" identifier (argument_list "()" ( ))) ;) (expression_statement "iVar6 = FUN_0011bf20();" (assignment_expression "iVar6 = FUN_0011bf20()" identifier = (call_expression "FUN_0011bf20()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar6 != 0) break;" if (parenthesized_expression "(iVar6 != 0)" ( (binary_expression "iVar6 != 0" identifier != number_literal) )) (break_statement "break;" break ;)) (expression_statement "FUN_0010c930();" (call_expression "FUN_0010c930()" identifier (argument_list "()" ( ))) ;) (expression_statement "xexit(0);" (call_expression "xexit(0)" identifier (argument_list "(0)" ( number_literal ))) ;) (labeled_statement "LAB_00108bff:\n    FUN_0013abc0(FUN_0010a8a0);" statement_identifier : (expression_statement "FUN_0013abc0(FUN_0010a8a0);" (call_expression "FUN_0013abc0(FUN_0010a8a0)" identifier (argument_list "(FUN_0010a8a0)" ( identifier ))) ;)) }) while (parenthesized_expression "( true )" ( true )) ;) (expression_statement "xexit(1);" (call_expression "xexit(1)" identifier (argument_list "(1)" ( number_literal ))) ;) (expression_statement "iVar6 = strcasecmp(__s1,"warning");" (assignment_expression "iVar6 = strcasecmp(__s1,"warning")" identifier = (call_expression "strcasecmp(__s1,"warning")" identifier (argument_list "(__s1,"warning")" ( identifier , (string_literal ""warning"" " string_content ") )))) ;) (if_statement "if (iVar6 != 0) {\n    uVar11 = dcgettext(0,"Invalid --size-check= option: `%s\'",5);\n                    \n    FUN_0011c360(uVar11,__s1);\n  }" if (parenthesized_expression "(iVar6 != 0)" ( (binary_expression "iVar6 != 0" identifier != number_literal) )) (compound_statement "{\n    uVar11 = dcgettext(0,"Invalid --size-check= option: `%s\'",5);\n                    \n    FUN_0011c360(uVar11,__s1);\n  }" { (expression_statement "uVar11 = dcgettext(0,"Invalid --size-check= option: `%s\'",5);" (assignment_expression "uVar11 = dcgettext(0,"Invalid --size-check= option: `%s\'",5)" identifier = (call_expression "dcgettext(0,"Invalid --size-check= option: `%s\'",5)" identifier (argument_list "(0,"Invalid --size-check= option: `%s\'",5)" ( number_literal , (string_literal ""Invalid --size-check= option: `%s\'"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "FUN_0011c360(uVar11,__s1);" (call_expression "FUN_0011c360(uVar11,__s1)" identifier (argument_list "(uVar11,__s1)" ( identifier , identifier ))) ;) })) (expression_statement "DAT_001638b0 = 1;" (assignment_expression "DAT_001638b0 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_00107958;" goto statement_identifier ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration (sized_type_specifier long) (pointer_declarator * IDENT)) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (expression_statement (subscript_expression (call_expression IDENT (argument_list ( (pointer_expression * IDENT) ))) [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , (string_literal " ") ))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , (string_literal " ") ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , (string_literal " string_content ") ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , (pointer_expression & IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT , LIT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) - (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT + LIT) ))) & LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (pointer_expression & 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 = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) >> LIT) )))) ; (comma_expression (assignment_expression IDENT = IDENT) , (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 (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (pointer_expression & IDENT) , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_array_declarator (abstract_parenthesized_declarator ( (abstract_pointer_declarator *) )) [ LIT ])) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + IDENT) + LIT) )))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE (abstract_array_declarator [ LIT ])) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_array_declarator [ LIT ])) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) << LIT) ))))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (labeled_statement statement_identifier : (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT , (pointer_expression & IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ))))) + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) )) (argument_list ( ))) ;) (return_statement return ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (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 , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) })) }))) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , IDENT , (pointer_expression & IDENT) )))) , (binary_expression IDENT == LIT)) ))) )) && (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + IDENT) )))) , (pointer_expression & IDENT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) == (field_expression IDENT . field_identifier)) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression (field_expression IDENT . field_identifier) != LIT) && (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) == (field_expression IDENT . field_identifier)) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + IDENT) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) ;) })) (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 ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (do_statement do (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , IDENT ))) ;) (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 ( (string_literal " string_content ") , LIT , (pointer_expression & IDENT) ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , LIT , (pointer_expression & IDENT) ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (while_statement while (parenthesized_expression ( (comma_expression (assignment_expression IDENT = IDENT) , (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (subscript_expression IDENT [ LIT ]) , LIT , (subscript_expression IDENT [ LIT ]) , (pointer_expression & IDENT) )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , LIT )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (binary_expression IDENT & LIT) ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (binary_expression IDENT & LIT) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (binary_expression IDENT & LIT) ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) | LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , LIT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (string_literal " string_content escape_sequence string_content ") , LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (string_literal " string_content escape_sequence string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT ))) ;) (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 : (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) ))) ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT - LIT) )))) + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) LIT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression 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 ( LIT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) || (binary_expression IDENT != LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (binary_expression (parenthesized_expression ( (binary_expression (unary_expression - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT == LIT) )))) & LIT) )) + LIT) ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (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 (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , (string_literal " string_content ") , (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)) , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , IDENT , (cast_expression ( (type_descriptor TYPE) ) IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , (string_literal " string_content ") , (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)) , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT)) , IDENT , (cast_expression ( (type_descriptor TYPE) ) IDENT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (binary_expression IDENT != LIT) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (cast_expression ( (type_descriptor TYPE) ) 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 ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT + IDENT) ))))) ;) }))) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (pointer_expression & IDENT) , IDENT ))) ;) })))) })) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (break_statement break ;)) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;)) }) while (parenthesized_expression ( BOOL )) ;) (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (string_literal " string_content ") )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })))
(function_definition "void FUN_001077a0(uint param_1,long *param_2)\n\n{\n  byte *pbVar1;\n  undefined1 (*pauVar2) [16];\n  size_t sVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  uint uVar8;\n  void *__ptr;\n  long *__ptr_00;\n  long *plVar9;\n  undefined8 uVar10;\n  undefined8 uVar11;\n  char *pcVar12;\n  long lVar13;\n  ulong uVar14;\n  long *plVar15;\n  undefined *puVar16;\n  undefined8 *puVar17;\n  undefined8 *puVar18;\n  long *__s;\n  char *__s1;\n  byte bVar19;\n  long *local_1a8;\n  uint local_1a0;\n  uint local_19c;\n  long local_198 [8];\n  stat local_158;\n  stat local_c8;\n  \n  bVar19 = 0;\n  local_1a8 = param_2;\n  local_19c = param_1;\n  _DAT_00162ec8 = FUN_0013a800();\n  FUN_0011c7a0();\n  setlocale(5,"");\n  setlocale(0,"");\n  bindtextdomain(&DAT_0013b28d,"/usr/share/locale");\n  textdomain(&DAT_0013b28d);\n  if (DAT_00162eac != 0) {\n    DAT_00162eb0 = 0x40;\n  }\n  DAT_00162ee8 = *local_1a8;\n  xmalloc_set_program_name();\n  FUN_0013a450(&local_19c,&local_1a8);\n  DAT_00163888 = "a.out";\n  hex_init();\n  bfd_init();\n  bfd_set_error_program_name(DAT_00162ee8);\n  __ptr = (void *)concat("-JLMRWZa::Dfg::I:o:vwX",PTR_s_O_g_G__0015a840,0);\n  __ptr_00 = (long *)xmalloc(DAT_0015a718 + 0x580);\n  puVar16 = PTR_s_alternate_0014e9c0;\n  __ptr_00[0xab] = DAT_0014ef18;\n  *__ptr_00 = (long)puVar16;\n  lVar13 = (long)__ptr_00 - (long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);\n  puVar17 = (undefined8 *)((long)&PTR_s_alternate_0014e9c0 - lVar13);\n  puVar18 = (undefined8 *)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);\n  for (uVar14 = (ulong)((int)lVar13 + 0x560U >> 3); sVar3 = DAT_0015a718, uVar14 != 0;\n      uVar14 = uVar14 - 1) {\n    *puVar18 = *puVar17;\n    puVar17 = puVar17 + (ulong)bVar19 * -2 + 1;\n    puVar18 = puVar18 + (ulong)bVar19 * -2 + 1;\n  }\n  memcpy(__ptr_00 + 0xac,&PTR_s_march_0015a740,DAT_0015a718);\n  uVar4 = local_19c;\n  __s = local_1a8;\n  pauVar2 = (undefined1 (*) [16])((long)__ptr_00 + sVar3 + 0x560);\n  *pauVar2 = (undefined1  [16])0x0;\n  plVar15 = (long *)&DAT_0013cb10;\n  pauVar2[1] = (undefined1  [16])0x0;\n  plVar9 = (long *)xmalloc((long)(int)(local_19c + 1) << 3);\n  local_1a0 = 1;\n  lVar13 = *__s;\n  plVar9[1] = 0;\n  *plVar9 = lVar13;\nLAB_00107958:\n  while( true ) {\n    uVar5 = getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8);\n    __s1 = (char *)(ulong)uVar5;\n    if (uVar5 == 0xffffffff) break;\n    if (uVar5 < 0xba) {\n                    \n                    \n      (*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();\n      return;\n    }\n    iVar6 = FUN_001347a0(__s1,optarg);\n    if (iVar6 == 0) {\n      if (uVar5 != 0x76) {\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    \n        exit(1);\n      }\n      if (DAT_00162ebc == 0) {\n        FUN_0010a980();\n      }\n      _DAT_00162ea8 = 1;\n    }\n  }\n  free(__ptr);\n  free(__ptr_00);\n  local_19c = local_1a0;\n  local_1a8 = plVar9;\n  FUN_00134ab0();\n  if (((1 < (int)local_19c) && (iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0)) &&\n     (1 < (int)local_19c)) {\n    lVar13 = 8;\n    iVar6 = 1;\n    do {\n      iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8);\n      pcVar12 = DAT_00163888;\n      if (((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))) {\n        DAT_00163888 = (char *)0x0;\n        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);\n        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    \n        FUN_0011c360(uVar10,uVar11,pcVar12);\n      }\n      iVar6 = iVar6 + 1;\n      lVar13 = lVar13 + 8;\n    } while (iVar6 < (int)local_19c);\n  }\n  FUN_0012a770();\n  FUN_00115310();\n  FUN_00125b60();\n  FUN_0011da80();\n  FUN_00116770();\n  FUN_00112f40();\n  FUN_0013abc0(FUN_0010a950);\n  if (DAT_00163940 != '\0') goto LAB_00108bff;\n  do {\n    FUN_0011a8a0(DAT_00162ec0,DAT_00163950,0,FUN_0010a810);\n    FUN_0011c840(DAT_00163888);\n    if (DAT_00163a50 == 0) {\n                    \n      FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7);\n    }\n    FUN_0012a810();\n    FUN_0010e380();\n    FUN_00126440(".gasversion.",0x15aad0,0x5a3d,&DAT_001638c0);\n    __ptr_00 = local_1a8;\n    uVar5 = local_19c;\n    while (local_1a8 = __ptr_00, local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0) {\n      uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800);\n      FUN_00129e10(uVar11);\n      FUN_00126560(uVar11);\n      puVar17 = (undefined8 *)*DAT_00162ed0;\n      free(DAT_00162ed0);\n      DAT_00162ed0 = puVar17;\n      __ptr_00 = local_1a8;\n      uVar5 = local_19c;\n    }\n    __s = (long *)(ulong)uVar5;\n    DAT_001637cc = 0;\n    DAT_00163930 = FUN_00125ca0(".text",0);\n    DAT_00163868 = FUN_00125ca0(".data",0);\n    DAT_001637d0 = FUN_00125ca0(&DAT_0013b3b5,0);\n    uVar8 = *(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163930,uVar8 & 0x1f);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163868,uVar8 & 0x27);\n    plVar15 = __ptr_00 + 1;\n    bfd_set_section_flags(DAT_00163a50,DAT_001637d0,uVar8 & 1);\n    pbVar1 = (byte *)(*(long *)(DAT_001637d0 + 0xa8) + 8);\n    *pbVar1 = *pbVar1 | 2;\n    FUN_00125ca0("*ABS*",0);\n    FUN_00125ca0(&DAT_0013b3c0,0);\n    DAT_00163898 = FUN_00125ca0("*GAS `reg\' section*",0);\n    DAT_001637c0 = FUN_00125ca0("*GAS `expr\' section*",0);\n    FUN_00125d00(DAT_00163930,0);\n    FUN_00132b90();\n    FUN_00135be0();\n    if (uVar5 == 1) {\nLAB_00108d46:\n      FUN_001239f0(&DAT_00142ab6);\n    }\n    else {\n      __s = __ptr_00 + (ulong)(uVar5 - 2) + 2;\n      __ptr_00 = (long *)0x0;\n      do {\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      } while (plVar15 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }\n    FUN_0010c560(0xffffffff);\n    if (DAT_00163878 != 0 || _DAT_001638a8 != 0) {\n      uVar11 = FUN_00125ca0(".note.GNU-stack",0);\n      bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18);\n    }\n    FUN_0010e390();\n    FUN_00111a40();\n    DAT_00162ee0 = 0;\n    iVar6 = FUN_00116d00();\n    if (iVar6 != 0) {\n      FUN_0012e000();\n      __s = local_198;\n      uVar5 = FUN_0011bf10();\n      __ptr_00 = (long *)(ulong)uVar5;\n      uVar8 = FUN_0011bf20();\n      plVar15 = (long *)(ulong)uVar8;\n      pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5);\n      sprintf((char *)__s,pcVar12,(ulong)uVar5);\n      pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5);\n      sprintf((char *)&local_c8,pcVar12,(ulong)uVar8);\n      if ((DAT_001637f4 != 0) && (uVar5 != 0)) {\n        if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }\n      }\n      if ((int)plVar15 == 0) {\n        DAT_00162ee0 = 1;\n      }\n      else if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }\n    }\n    fflush(stderr);\n    FUN_00117f20(DAT_00162ed8,param_2);\n    FUN_001167a0();\n    iVar6 = FUN_0011bf20();\n    if (iVar6 != 0) break;\n    FUN_0010c930();\n    xexit(0);\nLAB_00108bff:\n    FUN_0013abc0(FUN_0010a8a0);\n  } while( true );\n  xexit(1);\n  iVar6 = strcasecmp(__s1,"warning");\n  if (iVar6 != 0) {\n    uVar11 = dcgettext(0,"Invalid --size-check= option: `%s\'",5);\n                    \n    FUN_0011c360(uVar11,__s1);\n  }\n  DAT_001638b0 = 1;\n  goto LAB_00107958;\n}" (primitive_type "void") (function_declarator "FUN_001077a0(uint param_1,long *param_2)" (identifier "FUN_001077a0") (parameter_list "(uint param_1,long *param_2)" (( "(") (parameter_declaration "uint param_1" (type_identifier "uint") (identifier "param_1")) (, ",") (parameter_declaration "long *param_2" (sized_type_specifier "long" (long "long")) (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) () ")"))) (compound_statement "{\n  byte *pbVar1;\n  undefined1 (*pauVar2) [16];\n  size_t sVar3;\n  uint uVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  uint uVar8;\n  void *__ptr;\n  long *__ptr_00;\n  long *plVar9;\n  undefined8 uVar10;\n  undefined8 uVar11;\n  char *pcVar12;\n  long lVar13;\n  ulong uVar14;\n  long *plVar15;\n  undefined *puVar16;\n  undefined8 *puVar17;\n  undefined8 *puVar18;\n  long *__s;\n  char *__s1;\n  byte bVar19;\n  long *local_1a8;\n  uint local_1a0;\n  uint local_19c;\n  long local_198 [8];\n  stat local_158;\n  stat local_c8;\n  \n  bVar19 = 0;\n  local_1a8 = param_2;\n  local_19c = param_1;\n  _DAT_00162ec8 = FUN_0013a800();\n  FUN_0011c7a0();\n  setlocale(5,"");\n  setlocale(0,"");\n  bindtextdomain(&DAT_0013b28d,"/usr/share/locale");\n  textdomain(&DAT_0013b28d);\n  if (DAT_00162eac != 0) {\n    DAT_00162eb0 = 0x40;\n  }\n  DAT_00162ee8 = *local_1a8;\n  xmalloc_set_program_name();\n  FUN_0013a450(&local_19c,&local_1a8);\n  DAT_00163888 = "a.out";\n  hex_init();\n  bfd_init();\n  bfd_set_error_program_name(DAT_00162ee8);\n  __ptr = (void *)concat("-JLMRWZa::Dfg::I:o:vwX",PTR_s_O_g_G__0015a840,0);\n  __ptr_00 = (long *)xmalloc(DAT_0015a718 + 0x580);\n  puVar16 = PTR_s_alternate_0014e9c0;\n  __ptr_00[0xab] = DAT_0014ef18;\n  *__ptr_00 = (long)puVar16;\n  lVar13 = (long)__ptr_00 - (long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);\n  puVar17 = (undefined8 *)((long)&PTR_s_alternate_0014e9c0 - lVar13);\n  puVar18 = (undefined8 *)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);\n  for (uVar14 = (ulong)((int)lVar13 + 0x560U >> 3); sVar3 = DAT_0015a718, uVar14 != 0;\n      uVar14 = uVar14 - 1) {\n    *puVar18 = *puVar17;\n    puVar17 = puVar17 + (ulong)bVar19 * -2 + 1;\n    puVar18 = puVar18 + (ulong)bVar19 * -2 + 1;\n  }\n  memcpy(__ptr_00 + 0xac,&PTR_s_march_0015a740,DAT_0015a718);\n  uVar4 = local_19c;\n  __s = local_1a8;\n  pauVar2 = (undefined1 (*) [16])((long)__ptr_00 + sVar3 + 0x560);\n  *pauVar2 = (undefined1  [16])0x0;\n  plVar15 = (long *)&DAT_0013cb10;\n  pauVar2[1] = (undefined1  [16])0x0;\n  plVar9 = (long *)xmalloc((long)(int)(local_19c + 1) << 3);\n  local_1a0 = 1;\n  lVar13 = *__s;\n  plVar9[1] = 0;\n  *plVar9 = lVar13;\nLAB_00107958:\n  while( true ) {\n    uVar5 = getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8);\n    __s1 = (char *)(ulong)uVar5;\n    if (uVar5 == 0xffffffff) break;\n    if (uVar5 < 0xba) {\n                    \n                    \n      (*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();\n      return;\n    }\n    iVar6 = FUN_001347a0(__s1,optarg);\n    if (iVar6 == 0) {\n      if (uVar5 != 0x76) {\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    \n        exit(1);\n      }\n      if (DAT_00162ebc == 0) {\n        FUN_0010a980();\n      }\n      _DAT_00162ea8 = 1;\n    }\n  }\n  free(__ptr);\n  free(__ptr_00);\n  local_19c = local_1a0;\n  local_1a8 = plVar9;\n  FUN_00134ab0();\n  if (((1 < (int)local_19c) && (iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0)) &&\n     (1 < (int)local_19c)) {\n    lVar13 = 8;\n    iVar6 = 1;\n    do {\n      iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8);\n      pcVar12 = DAT_00163888;\n      if (((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))) {\n        DAT_00163888 = (char *)0x0;\n        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);\n        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    \n        FUN_0011c360(uVar10,uVar11,pcVar12);\n      }\n      iVar6 = iVar6 + 1;\n      lVar13 = lVar13 + 8;\n    } while (iVar6 < (int)local_19c);\n  }\n  FUN_0012a770();\n  FUN_00115310();\n  FUN_00125b60();\n  FUN_0011da80();\n  FUN_00116770();\n  FUN_00112f40();\n  FUN_0013abc0(FUN_0010a950);\n  if (DAT_00163940 != '\0') goto LAB_00108bff;\n  do {\n    FUN_0011a8a0(DAT_00162ec0,DAT_00163950,0,FUN_0010a810);\n    FUN_0011c840(DAT_00163888);\n    if (DAT_00163a50 == 0) {\n                    \n      FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7);\n    }\n    FUN_0012a810();\n    FUN_0010e380();\n    FUN_00126440(".gasversion.",0x15aad0,0x5a3d,&DAT_001638c0);\n    __ptr_00 = local_1a8;\n    uVar5 = local_19c;\n    while (local_1a8 = __ptr_00, local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0) {\n      uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800);\n      FUN_00129e10(uVar11);\n      FUN_00126560(uVar11);\n      puVar17 = (undefined8 *)*DAT_00162ed0;\n      free(DAT_00162ed0);\n      DAT_00162ed0 = puVar17;\n      __ptr_00 = local_1a8;\n      uVar5 = local_19c;\n    }\n    __s = (long *)(ulong)uVar5;\n    DAT_001637cc = 0;\n    DAT_00163930 = FUN_00125ca0(".text",0);\n    DAT_00163868 = FUN_00125ca0(".data",0);\n    DAT_001637d0 = FUN_00125ca0(&DAT_0013b3b5,0);\n    uVar8 = *(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163930,uVar8 & 0x1f);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163868,uVar8 & 0x27);\n    plVar15 = __ptr_00 + 1;\n    bfd_set_section_flags(DAT_00163a50,DAT_001637d0,uVar8 & 1);\n    pbVar1 = (byte *)(*(long *)(DAT_001637d0 + 0xa8) + 8);\n    *pbVar1 = *pbVar1 | 2;\n    FUN_00125ca0("*ABS*",0);\n    FUN_00125ca0(&DAT_0013b3c0,0);\n    DAT_00163898 = FUN_00125ca0("*GAS `reg\' section*",0);\n    DAT_001637c0 = FUN_00125ca0("*GAS `expr\' section*",0);\n    FUN_00125d00(DAT_00163930,0);\n    FUN_00132b90();\n    FUN_00135be0();\n    if (uVar5 == 1) {\nLAB_00108d46:\n      FUN_001239f0(&DAT_00142ab6);\n    }\n    else {\n      __s = __ptr_00 + (ulong)(uVar5 - 2) + 2;\n      __ptr_00 = (long *)0x0;\n      do {\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      } while (plVar15 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }\n    FUN_0010c560(0xffffffff);\n    if (DAT_00163878 != 0 || _DAT_001638a8 != 0) {\n      uVar11 = FUN_00125ca0(".note.GNU-stack",0);\n      bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18);\n    }\n    FUN_0010e390();\n    FUN_00111a40();\n    DAT_00162ee0 = 0;\n    iVar6 = FUN_00116d00();\n    if (iVar6 != 0) {\n      FUN_0012e000();\n      __s = local_198;\n      uVar5 = FUN_0011bf10();\n      __ptr_00 = (long *)(ulong)uVar5;\n      uVar8 = FUN_0011bf20();\n      plVar15 = (long *)(ulong)uVar8;\n      pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5);\n      sprintf((char *)__s,pcVar12,(ulong)uVar5);\n      pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5);\n      sprintf((char *)&local_c8,pcVar12,(ulong)uVar8);\n      if ((DAT_001637f4 != 0) && (uVar5 != 0)) {\n        if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }\n      }\n      if ((int)plVar15 == 0) {\n        DAT_00162ee0 = 1;\n      }\n      else if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }\n    }\n    fflush(stderr);\n    FUN_00117f20(DAT_00162ed8,param_2);\n    FUN_001167a0();\n    iVar6 = FUN_0011bf20();\n    if (iVar6 != 0) break;\n    FUN_0010c930();\n    xexit(0);\nLAB_00108bff:\n    FUN_0013abc0(FUN_0010a8a0);\n  } while( true );\n  xexit(1);\n  iVar6 = strcasecmp(__s1,"warning");\n  if (iVar6 != 0) {\n    uVar11 = dcgettext(0,"Invalid --size-check= option: `%s\'",5);\n                    \n    FUN_0011c360(uVar11,__s1);\n  }\n  DAT_001638b0 = 1;\n  goto LAB_00107958;\n}" ({ "{") (declaration "byte *pbVar1;" (type_identifier "byte") (pointer_declarator "*pbVar1" (* "*") (identifier "pbVar1")) (; ";")) (expression_statement "undefined1 (*pauVar2) [16];" (subscript_expression "undefined1 (*pauVar2) [16]" (call_expression "undefined1 (*pauVar2)" (identifier "undefined1") (argument_list "(*pauVar2)" (( "(") (pointer_expression "*pauVar2" (* "*") (identifier "pauVar2")) () ")"))) ([ "[") (number_literal "16") (] "]")) (; ";")) (declaration "size_t sVar3;" (primitive_type "size_t") (identifier "sVar3") (; ";")) (declaration "uint uVar4;" (type_identifier "uint") (identifier "uVar4") (; ";")) (declaration "uint uVar5;" (type_identifier "uint") (identifier "uVar5") (; ";")) (declaration "int iVar6;" (primitive_type "int") (identifier "iVar6") (; ";")) (declaration "int iVar7;" (primitive_type "int") (identifier "iVar7") (; ";")) (declaration "uint uVar8;" (type_identifier "uint") (identifier "uVar8") (; ";")) (declaration "void *__ptr;" (primitive_type "void") (pointer_declarator "*__ptr" (* "*") (identifier "__ptr")) (; ";")) (declaration "long *__ptr_00;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*__ptr_00" (* "*") (identifier "__ptr_00")) (; ";")) (declaration "long *plVar9;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*plVar9" (* "*") (identifier "plVar9")) (; ";")) (declaration "undefined8 uVar10;" (type_identifier "undefined8") (identifier "uVar10") (; ";")) (declaration "undefined8 uVar11;" (type_identifier "undefined8") (identifier "uVar11") (; ";")) (declaration "char *pcVar12;" (primitive_type "char") (pointer_declarator "*pcVar12" (* "*") (identifier "pcVar12")) (; ";")) (declaration "long lVar13;" (sized_type_specifier "long" (long "long")) (identifier "lVar13") (; ";")) (declaration "ulong uVar14;" (type_identifier "ulong") (identifier "uVar14") (; ";")) (declaration "long *plVar15;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*plVar15" (* "*") (identifier "plVar15")) (; ";")) (declaration "undefined *puVar16;" (type_identifier "undefined") (pointer_declarator "*puVar16" (* "*") (identifier "puVar16")) (; ";")) (declaration "undefined8 *puVar17;" (type_identifier "undefined8") (pointer_declarator "*puVar17" (* "*") (identifier "puVar17")) (; ";")) (declaration "undefined8 *puVar18;" (type_identifier "undefined8") (pointer_declarator "*puVar18" (* "*") (identifier "puVar18")) (; ";")) (declaration "long *__s;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*__s" (* "*") (identifier "__s")) (; ";")) (declaration "char *__s1;" (primitive_type "char") (pointer_declarator "*__s1" (* "*") (identifier "__s1")) (; ";")) (declaration "byte bVar19;" (type_identifier "byte") (identifier "bVar19") (; ";")) (declaration "long *local_1a8;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*local_1a8" (* "*") (identifier "local_1a8")) (; ";")) (declaration "uint local_1a0;" (type_identifier "uint") (identifier "local_1a0") (; ";")) (declaration "uint local_19c;" (type_identifier "uint") (identifier "local_19c") (; ";")) (declaration "long local_198 [8];" (sized_type_specifier "long" (long "long")) (array_declarator "local_198 [8]" (identifier "local_198") ([ "[") (number_literal "8") (] "]")) (; ";")) (declaration "stat local_158;" (type_identifier "stat") (identifier "local_158") (; ";")) (declaration "stat local_c8;" (type_identifier "stat") (identifier "local_c8") (; ";")) (expression_statement "bVar19 = 0;" (assignment_expression "bVar19 = 0" (identifier "bVar19") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_1a8 = param_2;" (assignment_expression "local_1a8 = param_2" (identifier "local_1a8") (= "=") (identifier "param_2")) (; ";")) (expression_statement "local_19c = param_1;" (assignment_expression "local_19c = param_1" (identifier "local_19c") (= "=") (identifier "param_1")) (; ";")) (expression_statement "_DAT_00162ec8 = FUN_0013a800();" (assignment_expression "_DAT_00162ec8 = FUN_0013a800()" (identifier "_DAT_00162ec8") (= "=") (call_expression "FUN_0013a800()" (identifier "FUN_0013a800") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "FUN_0011c7a0();" (call_expression "FUN_0011c7a0()" (identifier "FUN_0011c7a0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "setlocale(5,"");" (call_expression "setlocale(5,"")" (identifier "setlocale") (argument_list "(5,"")" (( "(") (number_literal "5") (, ",") (string_literal """" (" """) (" """)) () ")"))) (; ";")) (expression_statement "setlocale(0,"");" (call_expression "setlocale(0,"")" (identifier "setlocale") (argument_list "(0,"")" (( "(") (number_literal "0") (, ",") (string_literal """" (" """) (" """)) () ")"))) (; ";")) (expression_statement "bindtextdomain(&DAT_0013b28d,"/usr/share/locale");" (call_expression "bindtextdomain(&DAT_0013b28d,"/usr/share/locale")" (identifier "bindtextdomain") (argument_list "(&DAT_0013b28d,"/usr/share/locale")" (( "(") (pointer_expression "&DAT_0013b28d" (& "&") (identifier "DAT_0013b28d")) (, ",") (string_literal ""/usr/share/locale"" (" """) (string_content "/usr/share/locale") (" """)) () ")"))) (; ";")) (expression_statement "textdomain(&DAT_0013b28d);" (call_expression "textdomain(&DAT_0013b28d)" (identifier "textdomain") (argument_list "(&DAT_0013b28d)" (( "(") (pointer_expression "&DAT_0013b28d" (& "&") (identifier "DAT_0013b28d")) () ")"))) (; ";")) (if_statement "if (DAT_00162eac != 0) {\n    DAT_00162eb0 = 0x40;\n  }" (if "if") (parenthesized_expression "(DAT_00162eac != 0)" (( "(") (binary_expression "DAT_00162eac != 0" (identifier "DAT_00162eac") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    DAT_00162eb0 = 0x40;\n  }" ({ "{") (expression_statement "DAT_00162eb0 = 0x40;" (assignment_expression "DAT_00162eb0 = 0x40" (identifier "DAT_00162eb0") (= "=") (number_literal "0x40")) (; ";")) (} "}"))) (expression_statement "DAT_00162ee8 = *local_1a8;" (assignment_expression "DAT_00162ee8 = *local_1a8" (identifier "DAT_00162ee8") (= "=") (pointer_expression "*local_1a8" (* "*") (identifier "local_1a8"))) (; ";")) (expression_statement "xmalloc_set_program_name();" (call_expression "xmalloc_set_program_name()" (identifier "xmalloc_set_program_name") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "FUN_0013a450(&local_19c,&local_1a8);" (call_expression "FUN_0013a450(&local_19c,&local_1a8)" (identifier "FUN_0013a450") (argument_list "(&local_19c,&local_1a8)" (( "(") (pointer_expression "&local_19c" (& "&") (identifier "local_19c")) (, ",") (pointer_expression "&local_1a8" (& "&") (identifier "local_1a8")) () ")"))) (; ";")) (expression_statement "DAT_00163888 = "a.out";" (assignment_expression "DAT_00163888 = "a.out"" (identifier "DAT_00163888") (= "=") (string_literal ""a.out"" (" """) (string_content "a.out") (" """))) (; ";")) (expression_statement "hex_init();" (call_expression "hex_init()" (identifier "hex_init") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "bfd_init();" (call_expression "bfd_init()" (identifier "bfd_init") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "bfd_set_error_program_name(DAT_00162ee8);" (call_expression "bfd_set_error_program_name(DAT_00162ee8)" (identifier "bfd_set_error_program_name") (argument_list "(DAT_00162ee8)" (( "(") (identifier "DAT_00162ee8") () ")"))) (; ";")) (expression_statement "__ptr = (void *)concat("-JLMRWZa::Dfg::I:o:vwX",PTR_s_O_g_G__0015a840,0);" (assignment_expression "__ptr = (void *)concat("-JLMRWZa::Dfg::I:o:vwX",PTR_s_O_g_G__0015a840,0)" (identifier "__ptr") (= "=") (cast_expression "(void *)concat("-JLMRWZa::Dfg::I:o:vwX",PTR_s_O_g_G__0015a840,0)" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "concat("-JLMRWZa::Dfg::I:o:vwX",PTR_s_O_g_G__0015a840,0)" (identifier "concat") (argument_list "("-JLMRWZa::Dfg::I:o:vwX",PTR_s_O_g_G__0015a840,0)" (( "(") (string_literal ""-JLMRWZa::Dfg::I:o:vwX"" (" """) (string_content "-JLMRWZa::Dfg::I:o:vwX") (" """)) (, ",") (identifier "PTR_s_O_g_G__0015a840") (, ",") (number_literal "0") () ")"))))) (; ";")) (expression_statement "__ptr_00 = (long *)xmalloc(DAT_0015a718 + 0x580);" (assignment_expression "__ptr_00 = (long *)xmalloc(DAT_0015a718 + 0x580)" (identifier "__ptr_00") (= "=") (cast_expression "(long *)xmalloc(DAT_0015a718 + 0x580)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "xmalloc(DAT_0015a718 + 0x580)" (identifier "xmalloc") (argument_list "(DAT_0015a718 + 0x580)" (( "(") (binary_expression "DAT_0015a718 + 0x580" (identifier "DAT_0015a718") (+ "+") (number_literal "0x580")) () ")"))))) (; ";")) (expression_statement "puVar16 = PTR_s_alternate_0014e9c0;" (assignment_expression "puVar16 = PTR_s_alternate_0014e9c0" (identifier "puVar16") (= "=") (identifier "PTR_s_alternate_0014e9c0")) (; ";")) (expression_statement "__ptr_00[0xab] = DAT_0014ef18;" (assignment_expression "__ptr_00[0xab] = DAT_0014ef18" (subscript_expression "__ptr_00[0xab]" (identifier "__ptr_00") ([ "[") (number_literal "0xab") (] "]")) (= "=") (identifier "DAT_0014ef18")) (; ";")) (expression_statement "*__ptr_00 = (long)puVar16;" (assignment_expression "*__ptr_00 = (long)puVar16" (pointer_expression "*__ptr_00" (* "*") (identifier "__ptr_00")) (= "=") (cast_expression "(long)puVar16" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar16"))) (; ";")) (expression_statement "lVar13 = (long)__ptr_00 - (long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);" (assignment_expression "lVar13 = (long)__ptr_00 - (long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" (identifier "lVar13") (= "=") (binary_expression "(long)__ptr_00 - (long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" (cast_expression "(long)__ptr_00" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "__ptr_00")) (- "-") (cast_expression "(long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (parenthesized_expression "((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" (( "(") (binary_expression "(ulong)(__ptr_00 + 1) & 0xfffffffffffffff8" (call_expression "(ulong)(__ptr_00 + 1)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(__ptr_00 + 1)" (( "(") (binary_expression "__ptr_00 + 1" (identifier "__ptr_00") (+ "+") (number_literal "1")) () ")"))) (& "&") (number_literal "0xfffffffffffffff8")) () ")"))))) (; ";")) (expression_statement "puVar17 = (undefined8 *)((long)&PTR_s_alternate_0014e9c0 - lVar13);" (assignment_expression "puVar17 = (undefined8 *)((long)&PTR_s_alternate_0014e9c0 - lVar13)" (identifier "puVar17") (= "=") (cast_expression "(undefined8 *)((long)&PTR_s_alternate_0014e9c0 - lVar13)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)&PTR_s_alternate_0014e9c0 - lVar13)" (( "(") (binary_expression "(long)&PTR_s_alternate_0014e9c0 - lVar13" (cast_expression "(long)&PTR_s_alternate_0014e9c0" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (pointer_expression "&PTR_s_alternate_0014e9c0" (& "&") (identifier "PTR_s_alternate_0014e9c0"))) (- "-") (identifier "lVar13")) () ")")))) (; ";")) (expression_statement "puVar18 = (undefined8 *)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);" (assignment_expression "puVar18 = (undefined8 *)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" (identifier "puVar18") (= "=") (cast_expression "(undefined8 *)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8)" (( "(") (binary_expression "(ulong)(__ptr_00 + 1) & 0xfffffffffffffff8" (call_expression "(ulong)(__ptr_00 + 1)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(__ptr_00 + 1)" (( "(") (binary_expression "__ptr_00 + 1" (identifier "__ptr_00") (+ "+") (number_literal "1")) () ")"))) (& "&") (number_literal "0xfffffffffffffff8")) () ")")))) (; ";")) (for_statement "for (uVar14 = (ulong)((int)lVar13 + 0x560U >> 3); sVar3 = DAT_0015a718, uVar14 != 0;\n      uVar14 = uVar14 - 1) {\n    *puVar18 = *puVar17;\n    puVar17 = puVar17 + (ulong)bVar19 * -2 + 1;\n    puVar18 = puVar18 + (ulong)bVar19 * -2 + 1;\n  }" (for "for") (( "(") (assignment_expression "uVar14 = (ulong)((int)lVar13 + 0x560U >> 3)" (identifier "uVar14") (= "=") (call_expression "(ulong)((int)lVar13 + 0x560U >> 3)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "((int)lVar13 + 0x560U >> 3)" (( "(") (binary_expression "(int)lVar13 + 0x560U >> 3" (binary_expression "(int)lVar13 + 0x560U" (cast_expression "(int)lVar13" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "lVar13")) (+ "+") (number_literal "0x560U")) (>> ">>") (number_literal "3")) () ")")))) (; ";") (comma_expression "sVar3 = DAT_0015a718, uVar14 != 0" (assignment_expression "sVar3 = DAT_0015a718" (identifier "sVar3") (= "=") (identifier "DAT_0015a718")) (, ",") (binary_expression "uVar14 != 0" (identifier "uVar14") (!= "!=") (number_literal "0"))) (; ";") (assignment_expression "uVar14 = uVar14 - 1" (identifier "uVar14") (= "=") (binary_expression "uVar14 - 1" (identifier "uVar14") (- "-") (number_literal "1"))) () ")") (compound_statement "{\n    *puVar18 = *puVar17;\n    puVar17 = puVar17 + (ulong)bVar19 * -2 + 1;\n    puVar18 = puVar18 + (ulong)bVar19 * -2 + 1;\n  }" ({ "{") (expression_statement "*puVar18 = *puVar17;" (assignment_expression "*puVar18 = *puVar17" (pointer_expression "*puVar18" (* "*") (identifier "puVar18")) (= "=") (pointer_expression "*puVar17" (* "*") (identifier "puVar17"))) (; ";")) (expression_statement "puVar17 = puVar17 + (ulong)bVar19 * -2 + 1;" (assignment_expression "puVar17 = puVar17 + (ulong)bVar19 * -2 + 1" (identifier "puVar17") (= "=") (binary_expression "puVar17 + (ulong)bVar19 * -2 + 1" (binary_expression "puVar17 + (ulong)bVar19 * -2" (identifier "puVar17") (+ "+") (binary_expression "(ulong)bVar19 * -2" (cast_expression "(ulong)bVar19" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar19")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puVar18 = puVar18 + (ulong)bVar19 * -2 + 1;" (assignment_expression "puVar18 = puVar18 + (ulong)bVar19 * -2 + 1" (identifier "puVar18") (= "=") (binary_expression "puVar18 + (ulong)bVar19 * -2 + 1" (binary_expression "puVar18 + (ulong)bVar19 * -2" (identifier "puVar18") (+ "+") (binary_expression "(ulong)bVar19 * -2" (cast_expression "(ulong)bVar19" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar19")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (expression_statement "memcpy(__ptr_00 + 0xac,&PTR_s_march_0015a740,DAT_0015a718);" (call_expression "memcpy(__ptr_00 + 0xac,&PTR_s_march_0015a740,DAT_0015a718)" (identifier "memcpy") (argument_list "(__ptr_00 + 0xac,&PTR_s_march_0015a740,DAT_0015a718)" (( "(") (binary_expression "__ptr_00 + 0xac" (identifier "__ptr_00") (+ "+") (number_literal "0xac")) (, ",") (pointer_expression "&PTR_s_march_0015a740" (& "&") (identifier "PTR_s_march_0015a740")) (, ",") (identifier "DAT_0015a718") () ")"))) (; ";")) (expression_statement "uVar4 = local_19c;" (assignment_expression "uVar4 = local_19c" (identifier "uVar4") (= "=") (identifier "local_19c")) (; ";")) (expression_statement "__s = local_1a8;" (assignment_expression "__s = local_1a8" (identifier "__s") (= "=") (identifier "local_1a8")) (; ";")) (expression_statement "pauVar2 = (undefined1 (*) [16])((long)__ptr_00 + sVar3 + 0x560);" (assignment_expression "pauVar2 = (undefined1 (*) [16])((long)__ptr_00 + sVar3 + 0x560)" (identifier "pauVar2") (= "=") (cast_expression "(undefined1 (*) [16])((long)__ptr_00 + sVar3 + 0x560)" (( "(") (type_descriptor "undefined1 (*) [16]" (type_identifier "undefined1") (abstract_array_declarator "(*) [16]" (abstract_parenthesized_declarator "(*)" (( "(") (abstract_pointer_declarator "*" (* "*")) () ")")) ([ "[") (number_literal "16") (] "]"))) () ")") (parenthesized_expression "((long)__ptr_00 + sVar3 + 0x560)" (( "(") (binary_expression "(long)__ptr_00 + sVar3 + 0x560" (binary_expression "(long)__ptr_00 + sVar3" (cast_expression "(long)__ptr_00" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "__ptr_00")) (+ "+") (identifier "sVar3")) (+ "+") (number_literal "0x560")) () ")")))) (; ";")) (expression_statement "*pauVar2 = (undefined1  [16])0x0;" (assignment_expression "*pauVar2 = (undefined1  [16])0x0" (pointer_expression "*pauVar2" (* "*") (identifier "pauVar2")) (= "=") (cast_expression "(undefined1  [16])0x0" (( "(") (type_descriptor "undefined1  [16]" (type_identifier "undefined1") (abstract_array_declarator "[16]" ([ "[") (number_literal "16") (] "]"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "plVar15 = (long *)&DAT_0013cb10;" (assignment_expression "plVar15 = (long *)&DAT_0013cb10" (identifier "plVar15") (= "=") (cast_expression "(long *)&DAT_0013cb10" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&DAT_0013cb10" (& "&") (identifier "DAT_0013cb10")))) (; ";")) (expression_statement "pauVar2[1] = (undefined1  [16])0x0;" (assignment_expression "pauVar2[1] = (undefined1  [16])0x0" (subscript_expression "pauVar2[1]" (identifier "pauVar2") ([ "[") (number_literal "1") (] "]")) (= "=") (cast_expression "(undefined1  [16])0x0" (( "(") (type_descriptor "undefined1  [16]" (type_identifier "undefined1") (abstract_array_declarator "[16]" ([ "[") (number_literal "16") (] "]"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "plVar9 = (long *)xmalloc((long)(int)(local_19c + 1) << 3);" (assignment_expression "plVar9 = (long *)xmalloc((long)(int)(local_19c + 1) << 3)" (identifier "plVar9") (= "=") (cast_expression "(long *)xmalloc((long)(int)(local_19c + 1) << 3)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "xmalloc((long)(int)(local_19c + 1) << 3)" (identifier "xmalloc") (argument_list "((long)(int)(local_19c + 1) << 3)" (( "(") (binary_expression "(long)(int)(local_19c + 1) << 3" (cast_expression "(long)(int)(local_19c + 1)" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (cast_expression "(int)(local_19c + 1)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(local_19c + 1)" (( "(") (binary_expression "local_19c + 1" (identifier "local_19c") (+ "+") (number_literal "1")) () ")")))) (<< "<<") (number_literal "3")) () ")"))))) (; ";")) (expression_statement "local_1a0 = 1;" (assignment_expression "local_1a0 = 1" (identifier "local_1a0") (= "=") (number_literal "1")) (; ";")) (expression_statement "lVar13 = *__s;" (assignment_expression "lVar13 = *__s" (identifier "lVar13") (= "=") (pointer_expression "*__s" (* "*") (identifier "__s"))) (; ";")) (expression_statement "plVar9[1] = 0;" (assignment_expression "plVar9[1] = 0" (subscript_expression "plVar9[1]" (identifier "plVar9") ([ "[") (number_literal "1") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "*plVar9 = lVar13;" (assignment_expression "*plVar9 = lVar13" (pointer_expression "*plVar9" (* "*") (identifier "plVar9")) (= "=") (identifier "lVar13")) (; ";")) (labeled_statement "LAB_00107958:\n  while( true ) {\n    uVar5 = getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8);\n    __s1 = (char *)(ulong)uVar5;\n    if (uVar5 == 0xffffffff) break;\n    if (uVar5 < 0xba) {\n                    \n                    \n      (*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();\n      return;\n    }\n    iVar6 = FUN_001347a0(__s1,optarg);\n    if (iVar6 == 0) {\n      if (uVar5 != 0x76) {\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    \n        exit(1);\n      }\n      if (DAT_00162ebc == 0) {\n        FUN_0010a980();\n      }\n      _DAT_00162ea8 = 1;\n    }\n  }" (statement_identifier "LAB_00107958") (: ":") (while_statement "while( true ) {\n    uVar5 = getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8);\n    __s1 = (char *)(ulong)uVar5;\n    if (uVar5 == 0xffffffff) break;\n    if (uVar5 < 0xba) {\n                    \n                    \n      (*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();\n      return;\n    }\n    iVar6 = FUN_001347a0(__s1,optarg);\n    if (iVar6 == 0) {\n      if (uVar5 != 0x76) {\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    \n        exit(1);\n      }\n      if (DAT_00162ebc == 0) {\n        FUN_0010a980();\n      }\n      _DAT_00162ea8 = 1;\n    }\n  }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n    uVar5 = getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8);\n    __s1 = (char *)(ulong)uVar5;\n    if (uVar5 == 0xffffffff) break;\n    if (uVar5 < 0xba) {\n                    \n                    \n      (*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();\n      return;\n    }\n    iVar6 = FUN_001347a0(__s1,optarg);\n    if (iVar6 == 0) {\n      if (uVar5 != 0x76) {\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    \n        exit(1);\n      }\n      if (DAT_00162ebc == 0) {\n        FUN_0010a980();\n      }\n      _DAT_00162ea8 = 1;\n    }\n  }" ({ "{") (expression_statement "uVar5 = getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8);" (assignment_expression "uVar5 = getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8)" (identifier "uVar5") (= "=") (call_expression "getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8)" (identifier "getopt_long_only") (argument_list "(uVar4,__s,__ptr,__ptr_00,&local_c8)" (( "(") (identifier "uVar4") (, ",") (identifier "__s") (, ",") (identifier "__ptr") (, ",") (identifier "__ptr_00") (, ",") (pointer_expression "&local_c8" (& "&") (identifier "local_c8")) () ")")))) (; ";")) (expression_statement "__s1 = (char *)(ulong)uVar5;" (assignment_expression "__s1 = (char *)(ulong)uVar5" (identifier "__s1") (= "=") (cast_expression "(char *)(ulong)uVar5" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (cast_expression "(ulong)uVar5" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar5")))) (; ";")) (if_statement "if (uVar5 == 0xffffffff) break;" (if "if") (parenthesized_expression "(uVar5 == 0xffffffff)" (( "(") (binary_expression "uVar5 == 0xffffffff" (identifier "uVar5") (== "==") (number_literal "0xffffffff")) () ")")) (break_statement "break;" (break "break") (; ";"))) (if_statement "if (uVar5 < 0xba) {\n                    \n                    \n      (*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();\n      return;\n    }" (if "if") (parenthesized_expression "(uVar5 < 0xba)" (( "(") (binary_expression "uVar5 < 0xba" (identifier "uVar5") (< "<") (number_literal "0xba")) () ")")) (compound_statement "{\n                    \n                    \n      (*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();\n      return;\n    }" ({ "{") (expression_statement "(*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();" (call_expression "(*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))()" (parenthesized_expression "(*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))" (( "(") (pointer_expression "*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15)" (* "*") (cast_expression "(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15)" (( "(") (binary_expression "(long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15" (cast_expression "(long)*(int *)((long)plVar15 + (ulong)uVar5 * 4)" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (pointer_expression "*(int *)((long)plVar15 + (ulong)uVar5 * 4)" (* "*") (cast_expression "(int *)((long)plVar15 + (ulong)uVar5 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)plVar15 + (ulong)uVar5 * 4)" (( "(") (binary_expression "(long)plVar15 + (ulong)uVar5 * 4" (cast_expression "(long)plVar15" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "plVar15")) (+ "+") (binary_expression "(ulong)uVar5 * 4" (cast_expression "(ulong)uVar5" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar5")) (* "*") (number_literal "4"))) () ")"))))) (+ "+") (cast_expression "(long)plVar15" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "plVar15"))) () ")")))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "iVar6 = FUN_001347a0(__s1,optarg);" (assignment_expression "iVar6 = FUN_001347a0(__s1,optarg)" (identifier "iVar6") (= "=") (call_expression "FUN_001347a0(__s1,optarg)" (identifier "FUN_001347a0") (argument_list "(__s1,optarg)" (( "(") (identifier "__s1") (, ",") (identifier "optarg") () ")")))) (; ";")) (if_statement "if (iVar6 == 0) {\n      if (uVar5 != 0x76) {\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    \n        exit(1);\n      }\n      if (DAT_00162ebc == 0) {\n        FUN_0010a980();\n      }\n      _DAT_00162ea8 = 1;\n    }" (if "if") (parenthesized_expression "(iVar6 == 0)" (( "(") (binary_expression "iVar6 == 0" (identifier "iVar6") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      if (uVar5 != 0x76) {\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    \n        exit(1);\n      }\n      if (DAT_00162ebc == 0) {\n        FUN_0010a980();\n      }\n      _DAT_00162ea8 = 1;\n    }" ({ "{") (if_statement "if (uVar5 != 0x76) {\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    \n        exit(1);\n      }" (if "if") (parenthesized_expression "(uVar5 != 0x76)" (( "(") (binary_expression "uVar5 != 0x76" (identifier "uVar5") (!= "!=") (number_literal "0x76")) () ")")) (compound_statement "{\n        puVar16 = optarg;\n        if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }\n        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);\n        FUN_0011c1c0(uVar11,__s1,puVar16);\n                    \n        exit(1);\n      }" ({ "{") (expression_statement "puVar16 = optarg;" (assignment_expression "puVar16 = optarg" (identifier "puVar16") (= "=") (identifier "optarg")) (; ";")) (if_statement "if (optarg == (undefined *)0x0) {\n          puVar16 = &DAT_00142ab6;\n        }" (if "if") (parenthesized_expression "(optarg == (undefined *)0x0)" (( "(") (binary_expression "optarg == (undefined *)0x0" (identifier "optarg") (== "==") (cast_expression "(undefined *)0x0" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          puVar16 = &DAT_00142ab6;\n        }" ({ "{") (expression_statement "puVar16 = &DAT_00142ab6;" (assignment_expression "puVar16 = &DAT_00142ab6" (identifier "puVar16") (= "=") (pointer_expression "&DAT_00142ab6" (& "&") (identifier "DAT_00142ab6"))) (; ";")) (} "}"))) (expression_statement "uVar11 = dcgettext(0,"unrecognized option -%c%s",5);" (assignment_expression "uVar11 = dcgettext(0,"unrecognized option -%c%s",5)" (identifier "uVar11") (= "=") (call_expression "dcgettext(0,"unrecognized option -%c%s",5)" (identifier "dcgettext") (argument_list "(0,"unrecognized option -%c%s",5)" (( "(") (number_literal "0") (, ",") (string_literal ""unrecognized option -%c%s"" (" """) (string_content "unrecognized option -%c%s") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_0011c1c0(uVar11,__s1,puVar16);" (call_expression "FUN_0011c1c0(uVar11,__s1,puVar16)" (identifier "FUN_0011c1c0") (argument_list "(uVar11,__s1,puVar16)" (( "(") (identifier "uVar11") (, ",") (identifier "__s1") (, ",") (identifier "puVar16") () ")"))) (; ";")) (expression_statement "exit(1);" (call_expression "exit(1)" (identifier "exit") (argument_list "(1)" (( "(") (number_literal "1") () ")"))) (; ";")) (} "}"))) (if_statement "if (DAT_00162ebc == 0) {\n        FUN_0010a980();\n      }" (if "if") (parenthesized_expression "(DAT_00162ebc == 0)" (( "(") (binary_expression "DAT_00162ebc == 0" (identifier "DAT_00162ebc") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        FUN_0010a980();\n      }" ({ "{") (expression_statement "FUN_0010a980();" (call_expression "FUN_0010a980()" (identifier "FUN_0010a980") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "_DAT_00162ea8 = 1;" (assignment_expression "_DAT_00162ea8 = 1" (identifier "_DAT_00162ea8") (= "=") (number_literal "1")) (; ";")) (} "}"))) (} "}")))) (expression_statement "free(__ptr);" (call_expression "free(__ptr)" (identifier "free") (argument_list "(__ptr)" (( "(") (identifier "__ptr") () ")"))) (; ";")) (expression_statement "free(__ptr_00);" (call_expression "free(__ptr_00)" (identifier "free") (argument_list "(__ptr_00)" (( "(") (identifier "__ptr_00") () ")"))) (; ";")) (expression_statement "local_19c = local_1a0;" (assignment_expression "local_19c = local_1a0" (identifier "local_19c") (= "=") (identifier "local_1a0")) (; ";")) (expression_statement "local_1a8 = plVar9;" (assignment_expression "local_1a8 = plVar9" (identifier "local_1a8") (= "=") (identifier "plVar9")) (; ";")) (expression_statement "FUN_00134ab0();" (call_expression "FUN_00134ab0()" (identifier "FUN_00134ab0") (argument_list "()" (( "(") () ")"))) (; ";")) (if_statement "if (((1 < (int)local_19c) && (iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0)) &&\n     (1 < (int)local_19c)) {\n    lVar13 = 8;\n    iVar6 = 1;\n    do {\n      iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8);\n      pcVar12 = DAT_00163888;\n      if (((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))) {\n        DAT_00163888 = (char *)0x0;\n        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);\n        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    \n        FUN_0011c360(uVar10,uVar11,pcVar12);\n      }\n      iVar6 = iVar6 + 1;\n      lVar13 = lVar13 + 8;\n    } while (iVar6 < (int)local_19c);\n  }" (if "if") (parenthesized_expression "(((1 < (int)local_19c) && (iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0)) &&\n     (1 < (int)local_19c))" (( "(") (binary_expression "((1 < (int)local_19c) && (iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0)) &&\n     (1 < (int)local_19c)" (parenthesized_expression "((1 < (int)local_19c) && (iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0))" (( "(") (binary_expression "(1 < (int)local_19c) && (iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0)" (parenthesized_expression "(1 < (int)local_19c)" (( "(") (binary_expression "1 < (int)local_19c" (number_literal "1") (< "<") (cast_expression "(int)local_19c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_19c"))) () ")")) (&& "&&") (parenthesized_expression "(iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0)" (( "(") (comma_expression "iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0" (assignment_expression "iVar6 = __xstat(1,DAT_00163888,&local_158)" (identifier "iVar6") (= "=") (call_expression "__xstat(1,DAT_00163888,&local_158)" (identifier "__xstat") (argument_list "(1,DAT_00163888,&local_158)" (( "(") (number_literal "1") (, ",") (identifier "DAT_00163888") (, ",") (pointer_expression "&local_158" (& "&") (identifier "local_158")) () ")")))) (, ",") (binary_expression "iVar6 == 0" (identifier "iVar6") (== "==") (number_literal "0"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(1 < (int)local_19c)" (( "(") (binary_expression "1 < (int)local_19c" (number_literal "1") (< "<") (cast_expression "(int)local_19c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_19c"))) () ")"))) () ")")) (compound_statement "{\n    lVar13 = 8;\n    iVar6 = 1;\n    do {\n      iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8);\n      pcVar12 = DAT_00163888;\n      if (((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))) {\n        DAT_00163888 = (char *)0x0;\n        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);\n        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    \n        FUN_0011c360(uVar10,uVar11,pcVar12);\n      }\n      iVar6 = iVar6 + 1;\n      lVar13 = lVar13 + 8;\n    } while (iVar6 < (int)local_19c);\n  }" ({ "{") (expression_statement "lVar13 = 8;" (assignment_expression "lVar13 = 8" (identifier "lVar13") (= "=") (number_literal "8")) (; ";")) (expression_statement "iVar6 = 1;" (assignment_expression "iVar6 = 1" (identifier "iVar6") (= "=") (number_literal "1")) (; ";")) (do_statement "do {\n      iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8);\n      pcVar12 = DAT_00163888;\n      if (((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))) {\n        DAT_00163888 = (char *)0x0;\n        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);\n        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    \n        FUN_0011c360(uVar10,uVar11,pcVar12);\n      }\n      iVar6 = iVar6 + 1;\n      lVar13 = lVar13 + 8;\n    } while (iVar6 < (int)local_19c);" (do "do") (compound_statement "{\n      iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8);\n      pcVar12 = DAT_00163888;\n      if (((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))) {\n        DAT_00163888 = (char *)0x0;\n        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);\n        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    \n        FUN_0011c360(uVar10,uVar11,pcVar12);\n      }\n      iVar6 = iVar6 + 1;\n      lVar13 = lVar13 + 8;\n    }" ({ "{") (expression_statement "iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8);" (assignment_expression "iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8)" (identifier "iVar7") (= "=") (call_expression "__xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8)" (identifier "__xstat") (argument_list "(1,*(char **)((long)local_1a8 + lVar13),&local_c8)" (( "(") (number_literal "1") (, ",") (pointer_expression "*(char **)((long)local_1a8 + lVar13)" (* "*") (cast_expression "(char **)((long)local_1a8 + lVar13)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((long)local_1a8 + lVar13)" (( "(") (binary_expression "(long)local_1a8 + lVar13" (cast_expression "(long)local_1a8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "local_1a8")) (+ "+") (identifier "lVar13")) () ")")))) (, ",") (pointer_expression "&local_c8" (& "&") (identifier "local_c8")) () ")")))) (; ";")) (expression_statement "pcVar12 = DAT_00163888;" (assignment_expression "pcVar12 = DAT_00163888" (identifier "pcVar12") (= "=") (identifier "DAT_00163888")) (; ";")) (if_statement "if (((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))) {\n        DAT_00163888 = (char *)0x0;\n        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);\n        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    \n        FUN_0011c360(uVar10,uVar11,pcVar12);\n      }" (if "if") (parenthesized_expression "(((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev))))" (( "(") (binary_expression "((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&\n         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))" (parenthesized_expression "((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino))" (( "(") (binary_expression "(iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)" (parenthesized_expression "(iVar7 == 0)" (( "(") (binary_expression "iVar7 == 0" (identifier "iVar7") (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(local_158.st_ino == local_c8.st_ino)" (( "(") (binary_expression "local_158.st_ino == local_c8.st_ino" (field_expression "local_158.st_ino" (identifier "local_158") (. ".") (field_identifier "st_ino")) (== "==") (field_expression "local_c8.st_ino" (identifier "local_c8") (. ".") (field_identifier "st_ino"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))" (( "(") (parenthesized_expression "(local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev))" (( "(") (binary_expression "local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)" (binary_expression "local_c8.st_ino != 0" (field_expression "local_c8.st_ino" (identifier "local_c8") (. ".") (field_identifier "st_ino")) (!= "!=") (number_literal "0")) (&& "&&") (parenthesized_expression "(local_c8.st_dev == local_158.st_dev)" (( "(") (binary_expression "local_c8.st_dev == local_158.st_dev" (field_expression "local_c8.st_dev" (identifier "local_c8") (. ".") (field_identifier "st_dev")) (== "==") (field_expression "local_158.st_dev" (identifier "local_158") (. ".") (field_identifier "st_dev"))) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n        DAT_00163888 = (char *)0x0;\n        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);\n        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);\n                    \n        FUN_0011c360(uVar10,uVar11,pcVar12);\n      }" ({ "{") (expression_statement "DAT_00163888 = (char *)0x0;" (assignment_expression "DAT_00163888 = (char *)0x0" (identifier "DAT_00163888") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);" (assignment_expression "uVar11 = *(undefined8 *)((long)local_1a8 + lVar13)" (identifier "uVar11") (= "=") (pointer_expression "*(undefined8 *)((long)local_1a8 + lVar13)" (* "*") (cast_expression "(undefined8 *)((long)local_1a8 + lVar13)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)local_1a8 + lVar13)" (( "(") (binary_expression "(long)local_1a8 + lVar13" (cast_expression "(long)local_1a8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "local_1a8")) (+ "+") (identifier "lVar13")) () ")"))))) (; ";")) (expression_statement "uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);" (assignment_expression "uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5)" (identifier "uVar10") (= "=") (call_expression "dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5)" (identifier "dcgettext") (argument_list "(0,"The input \'%s\' and output \'%s\' files are the same",5)" (( "(") (number_literal "0") (, ",") (string_literal ""The input \'%s\' and output \'%s\' files are the same"" (" """) (string_content "The input ") (escape_sequence "\'") (string_content "%s") (escape_sequence "\'") (string_content " and output ") (escape_sequence "\'") (string_content "%s") (escape_sequence "\'") (string_content " files are the same") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_0011c360(uVar10,uVar11,pcVar12);" (call_expression "FUN_0011c360(uVar10,uVar11,pcVar12)" (identifier "FUN_0011c360") (argument_list "(uVar10,uVar11,pcVar12)" (( "(") (identifier "uVar10") (, ",") (identifier "uVar11") (, ",") (identifier "pcVar12") () ")"))) (; ";")) (} "}"))) (expression_statement "iVar6 = iVar6 + 1;" (assignment_expression "iVar6 = iVar6 + 1" (identifier "iVar6") (= "=") (binary_expression "iVar6 + 1" (identifier "iVar6") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "lVar13 = lVar13 + 8;" (assignment_expression "lVar13 = lVar13 + 8" (identifier "lVar13") (= "=") (binary_expression "lVar13 + 8" (identifier "lVar13") (+ "+") (number_literal "8"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar6 < (int)local_19c)" (( "(") (binary_expression "iVar6 < (int)local_19c" (identifier "iVar6") (< "<") (cast_expression "(int)local_19c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_19c"))) () ")")) (; ";")) (} "}"))) (expression_statement "FUN_0012a770();" (call_expression "FUN_0012a770()" (identifier "FUN_0012a770") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "FUN_00115310();" (call_expression "FUN_00115310()" (identifier "FUN_00115310") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "FUN_00125b60();" (call_expression "FUN_00125b60()" (identifier "FUN_00125b60") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "FUN_0011da80();" (call_expression "FUN_0011da80()" (identifier "FUN_0011da80") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "FUN_00116770();" (call_expression "FUN_00116770()" (identifier "FUN_00116770") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "FUN_00112f40();" (call_expression "FUN_00112f40()" (identifier "FUN_00112f40") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "FUN_0013abc0(FUN_0010a950);" (call_expression "FUN_0013abc0(FUN_0010a950)" (identifier "FUN_0013abc0") (argument_list "(FUN_0010a950)" (( "(") (identifier "FUN_0010a950") () ")"))) (; ";")) (if_statement "if (DAT_00163940 != '\0') goto LAB_00108bff;" (if "if") (parenthesized_expression "(DAT_00163940 != '\0')" (( "(") (binary_expression "DAT_00163940 != '\0'" (identifier "DAT_00163940") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_00108bff;" (goto "goto") (statement_identifier "LAB_00108bff") (; ";"))) (do_statement "do {\n    FUN_0011a8a0(DAT_00162ec0,DAT_00163950,0,FUN_0010a810);\n    FUN_0011c840(DAT_00163888);\n    if (DAT_00163a50 == 0) {\n                    \n      FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7);\n    }\n    FUN_0012a810();\n    FUN_0010e380();\n    FUN_00126440(".gasversion.",0x15aad0,0x5a3d,&DAT_001638c0);\n    __ptr_00 = local_1a8;\n    uVar5 = local_19c;\n    while (local_1a8 = __ptr_00, local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0) {\n      uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800);\n      FUN_00129e10(uVar11);\n      FUN_00126560(uVar11);\n      puVar17 = (undefined8 *)*DAT_00162ed0;\n      free(DAT_00162ed0);\n      DAT_00162ed0 = puVar17;\n      __ptr_00 = local_1a8;\n      uVar5 = local_19c;\n    }\n    __s = (long *)(ulong)uVar5;\n    DAT_001637cc = 0;\n    DAT_00163930 = FUN_00125ca0(".text",0);\n    DAT_00163868 = FUN_00125ca0(".data",0);\n    DAT_001637d0 = FUN_00125ca0(&DAT_0013b3b5,0);\n    uVar8 = *(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163930,uVar8 & 0x1f);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163868,uVar8 & 0x27);\n    plVar15 = __ptr_00 + 1;\n    bfd_set_section_flags(DAT_00163a50,DAT_001637d0,uVar8 & 1);\n    pbVar1 = (byte *)(*(long *)(DAT_001637d0 + 0xa8) + 8);\n    *pbVar1 = *pbVar1 | 2;\n    FUN_00125ca0("*ABS*",0);\n    FUN_00125ca0(&DAT_0013b3c0,0);\n    DAT_00163898 = FUN_00125ca0("*GAS `reg\' section*",0);\n    DAT_001637c0 = FUN_00125ca0("*GAS `expr\' section*",0);\n    FUN_00125d00(DAT_00163930,0);\n    FUN_00132b90();\n    FUN_00135be0();\n    if (uVar5 == 1) {\nLAB_00108d46:\n      FUN_001239f0(&DAT_00142ab6);\n    }\n    else {\n      __s = __ptr_00 + (ulong)(uVar5 - 2) + 2;\n      __ptr_00 = (long *)0x0;\n      do {\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      } while (plVar15 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }\n    FUN_0010c560(0xffffffff);\n    if (DAT_00163878 != 0 || _DAT_001638a8 != 0) {\n      uVar11 = FUN_00125ca0(".note.GNU-stack",0);\n      bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18);\n    }\n    FUN_0010e390();\n    FUN_00111a40();\n    DAT_00162ee0 = 0;\n    iVar6 = FUN_00116d00();\n    if (iVar6 != 0) {\n      FUN_0012e000();\n      __s = local_198;\n      uVar5 = FUN_0011bf10();\n      __ptr_00 = (long *)(ulong)uVar5;\n      uVar8 = FUN_0011bf20();\n      plVar15 = (long *)(ulong)uVar8;\n      pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5);\n      sprintf((char *)__s,pcVar12,(ulong)uVar5);\n      pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5);\n      sprintf((char *)&local_c8,pcVar12,(ulong)uVar8);\n      if ((DAT_001637f4 != 0) && (uVar5 != 0)) {\n        if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }\n      }\n      if ((int)plVar15 == 0) {\n        DAT_00162ee0 = 1;\n      }\n      else if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }\n    }\n    fflush(stderr);\n    FUN_00117f20(DAT_00162ed8,param_2);\n    FUN_001167a0();\n    iVar6 = FUN_0011bf20();\n    if (iVar6 != 0) break;\n    FUN_0010c930();\n    xexit(0);\nLAB_00108bff:\n    FUN_0013abc0(FUN_0010a8a0);\n  } while( true );" (do "do") (compound_statement "{\n    FUN_0011a8a0(DAT_00162ec0,DAT_00163950,0,FUN_0010a810);\n    FUN_0011c840(DAT_00163888);\n    if (DAT_00163a50 == 0) {\n                    \n      FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7);\n    }\n    FUN_0012a810();\n    FUN_0010e380();\n    FUN_00126440(".gasversion.",0x15aad0,0x5a3d,&DAT_001638c0);\n    __ptr_00 = local_1a8;\n    uVar5 = local_19c;\n    while (local_1a8 = __ptr_00, local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0) {\n      uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800);\n      FUN_00129e10(uVar11);\n      FUN_00126560(uVar11);\n      puVar17 = (undefined8 *)*DAT_00162ed0;\n      free(DAT_00162ed0);\n      DAT_00162ed0 = puVar17;\n      __ptr_00 = local_1a8;\n      uVar5 = local_19c;\n    }\n    __s = (long *)(ulong)uVar5;\n    DAT_001637cc = 0;\n    DAT_00163930 = FUN_00125ca0(".text",0);\n    DAT_00163868 = FUN_00125ca0(".data",0);\n    DAT_001637d0 = FUN_00125ca0(&DAT_0013b3b5,0);\n    uVar8 = *(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163930,uVar8 & 0x1f);\n    bfd_set_section_flags(DAT_00163a50,DAT_00163868,uVar8 & 0x27);\n    plVar15 = __ptr_00 + 1;\n    bfd_set_section_flags(DAT_00163a50,DAT_001637d0,uVar8 & 1);\n    pbVar1 = (byte *)(*(long *)(DAT_001637d0 + 0xa8) + 8);\n    *pbVar1 = *pbVar1 | 2;\n    FUN_00125ca0("*ABS*",0);\n    FUN_00125ca0(&DAT_0013b3c0,0);\n    DAT_00163898 = FUN_00125ca0("*GAS `reg\' section*",0);\n    DAT_001637c0 = FUN_00125ca0("*GAS `expr\' section*",0);\n    FUN_00125d00(DAT_00163930,0);\n    FUN_00132b90();\n    FUN_00135be0();\n    if (uVar5 == 1) {\nLAB_00108d46:\n      FUN_001239f0(&DAT_00142ab6);\n    }\n    else {\n      __s = __ptr_00 + (ulong)(uVar5 - 2) + 2;\n      __ptr_00 = (long *)0x0;\n      do {\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      } while (plVar15 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }\n    FUN_0010c560(0xffffffff);\n    if (DAT_00163878 != 0 || _DAT_001638a8 != 0) {\n      uVar11 = FUN_00125ca0(".note.GNU-stack",0);\n      bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18);\n    }\n    FUN_0010e390();\n    FUN_00111a40();\n    DAT_00162ee0 = 0;\n    iVar6 = FUN_00116d00();\n    if (iVar6 != 0) {\n      FUN_0012e000();\n      __s = local_198;\n      uVar5 = FUN_0011bf10();\n      __ptr_00 = (long *)(ulong)uVar5;\n      uVar8 = FUN_0011bf20();\n      plVar15 = (long *)(ulong)uVar8;\n      pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5);\n      sprintf((char *)__s,pcVar12,(ulong)uVar5);\n      pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5);\n      sprintf((char *)&local_c8,pcVar12,(ulong)uVar8);\n      if ((DAT_001637f4 != 0) && (uVar5 != 0)) {\n        if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }\n      }\n      if ((int)plVar15 == 0) {\n        DAT_00162ee0 = 1;\n      }\n      else if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }\n    }\n    fflush(stderr);\n    FUN_00117f20(DAT_00162ed8,param_2);\n    FUN_001167a0();\n    iVar6 = FUN_0011bf20();\n    if (iVar6 != 0) break;\n    FUN_0010c930();\n    xexit(0);\nLAB_00108bff:\n    FUN_0013abc0(FUN_0010a8a0);\n  }" ({ "{") (expression_statement "FUN_0011a8a0(DAT_00162ec0,DAT_00163950,0,FUN_0010a810);" (call_expression "FUN_0011a8a0(DAT_00162ec0,DAT_00163950,0,FUN_0010a810)" (identifier "FUN_0011a8a0") (argument_list "(DAT_00162ec0,DAT_00163950,0,FUN_0010a810)" (( "(") (identifier "DAT_00162ec0") (, ",") (identifier "DAT_00163950") (, ",") (number_literal "0") (, ",") (identifier "FUN_0010a810") () ")"))) (; ";")) (expression_statement "FUN_0011c840(DAT_00163888);" (call_expression "FUN_0011c840(DAT_00163888)" (identifier "FUN_0011c840") (argument_list "(DAT_00163888)" (( "(") (identifier "DAT_00163888") () ")"))) (; ";")) (if_statement "if (DAT_00163a50 == 0) {\n                    \n      FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7);\n    }" (if "if") (parenthesized_expression "(DAT_00163a50 == 0)" (( "(") (binary_expression "DAT_00163a50 == 0" (identifier "DAT_00163a50") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n      FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7);\n    }" ({ "{") (expression_statement "FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7);" (call_expression "FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7)" (identifier "FUN_0011c450") (argument_list "("../../gas/as.c",0x519,&DAT_0013cef7)" (( "(") (string_literal ""../../gas/as.c"" (" """) (string_content "../../gas/as.c") (" """)) (, ",") (number_literal "0x519") (, ",") (pointer_expression "&DAT_0013cef7" (& "&") (identifier "DAT_0013cef7")) () ")"))) (; ";")) (} "}"))) (expression_statement "FUN_0012a810();" (call_expression "FUN_0012a810()" (identifier "FUN_0012a810") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "FUN_0010e380();" (call_expression "FUN_0010e380()" (identifier "FUN_0010e380") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "FUN_00126440(".gasversion.",0x15aad0,0x5a3d,&DAT_001638c0);" (call_expression "FUN_00126440(".gasversion.",0x15aad0,0x5a3d,&DAT_001638c0)" (identifier "FUN_00126440") (argument_list "(".gasversion.",0x15aad0,0x5a3d,&DAT_001638c0)" (( "(") (string_literal "".gasversion."" (" """) (string_content ".gasversion.") (" """)) (, ",") (number_literal "0x15aad0") (, ",") (number_literal "0x5a3d") (, ",") (pointer_expression "&DAT_001638c0" (& "&") (identifier "DAT_001638c0")) () ")"))) (; ";")) (expression_statement "__ptr_00 = local_1a8;" (assignment_expression "__ptr_00 = local_1a8" (identifier "__ptr_00") (= "=") (identifier "local_1a8")) (; ";")) (expression_statement "uVar5 = local_19c;" (assignment_expression "uVar5 = local_19c" (identifier "uVar5") (= "=") (identifier "local_19c")) (; ";")) (while_statement "while (local_1a8 = __ptr_00, local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0) {\n      uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800);\n      FUN_00129e10(uVar11);\n      FUN_00126560(uVar11);\n      puVar17 = (undefined8 *)*DAT_00162ed0;\n      free(DAT_00162ed0);\n      DAT_00162ed0 = puVar17;\n      __ptr_00 = local_1a8;\n      uVar5 = local_19c;\n    }" (while "while") (parenthesized_expression "(local_1a8 = __ptr_00, local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0)" (( "(") (comma_expression "local_1a8 = __ptr_00, local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0" (assignment_expression "local_1a8 = __ptr_00" (identifier "local_1a8") (= "=") (identifier "__ptr_00")) (, ",") (comma_expression "local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0" (assignment_expression "local_19c = uVar5" (identifier "local_19c") (= "=") (identifier "uVar5")) (, ",") (binary_expression "DAT_00162ed0 != (undefined8 *)0x0" (identifier "DAT_00162ed0") (!= "!=") (cast_expression "(undefined8 *)0x0" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))))) () ")")) (compound_statement "{\n      uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800);\n      FUN_00129e10(uVar11);\n      FUN_00126560(uVar11);\n      puVar17 = (undefined8 *)*DAT_00162ed0;\n      free(DAT_00162ed0);\n      DAT_00162ed0 = puVar17;\n      __ptr_00 = local_1a8;\n      uVar5 = local_19c;\n    }" ({ "{") (expression_statement "uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800);" (assignment_expression "uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800)" (identifier "uVar11") (= "=") (call_expression "FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800)" (identifier "FUN_00127c60") (argument_list "(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800)" (( "(") (subscript_expression "DAT_00162ed0[1]" (identifier "DAT_00162ed0") ([ "[") (number_literal "1") (] "]")) (, ",") (number_literal "0x15aad0") (, ",") (subscript_expression "DAT_00162ed0[2]" (identifier "DAT_00162ed0") ([ "[") (number_literal "2") (] "]")) (, ",") (pointer_expression "&DAT_00163800" (& "&") (identifier "DAT_00163800")) () ")")))) (; ";")) (expression_statement "FUN_00129e10(uVar11);" (call_expression "FUN_00129e10(uVar11)" (identifier "FUN_00129e10") (argument_list "(uVar11)" (( "(") (identifier "uVar11") () ")"))) (; ";")) (expression_statement "FUN_00126560(uVar11);" (call_expression "FUN_00126560(uVar11)" (identifier "FUN_00126560") (argument_list "(uVar11)" (( "(") (identifier "uVar11") () ")"))) (; ";")) (expression_statement "puVar17 = (undefined8 *)*DAT_00162ed0;" (assignment_expression "puVar17 = (undefined8 *)*DAT_00162ed0" (identifier "puVar17") (= "=") (cast_expression "(undefined8 *)*DAT_00162ed0" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*DAT_00162ed0" (* "*") (identifier "DAT_00162ed0")))) (; ";")) (expression_statement "free(DAT_00162ed0);" (call_expression "free(DAT_00162ed0)" (identifier "free") (argument_list "(DAT_00162ed0)" (( "(") (identifier "DAT_00162ed0") () ")"))) (; ";")) (expression_statement "DAT_00162ed0 = puVar17;" (assignment_expression "DAT_00162ed0 = puVar17" (identifier "DAT_00162ed0") (= "=") (identifier "puVar17")) (; ";")) (expression_statement "__ptr_00 = local_1a8;" (assignment_expression "__ptr_00 = local_1a8" (identifier "__ptr_00") (= "=") (identifier "local_1a8")) (; ";")) (expression_statement "uVar5 = local_19c;" (assignment_expression "uVar5 = local_19c" (identifier "uVar5") (= "=") (identifier "local_19c")) (; ";")) (} "}"))) (expression_statement "__s = (long *)(ulong)uVar5;" (assignment_expression "__s = (long *)(ulong)uVar5" (identifier "__s") (= "=") (cast_expression "(long *)(ulong)uVar5" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (cast_expression "(ulong)uVar5" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar5")))) (; ";")) (expression_statement "DAT_001637cc = 0;" (assignment_expression "DAT_001637cc = 0" (identifier "DAT_001637cc") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_00163930 = FUN_00125ca0(".text",0);" (assignment_expression "DAT_00163930 = FUN_00125ca0(".text",0)" (identifier "DAT_00163930") (= "=") (call_expression "FUN_00125ca0(".text",0)" (identifier "FUN_00125ca0") (argument_list "(".text",0)" (( "(") (string_literal "".text"" (" """) (string_content ".text") (" """)) (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "DAT_00163868 = FUN_00125ca0(".data",0);" (assignment_expression "DAT_00163868 = FUN_00125ca0(".data",0)" (identifier "DAT_00163868") (= "=") (call_expression "FUN_00125ca0(".data",0)" (identifier "FUN_00125ca0") (argument_list "(".data",0)" (( "(") (string_literal "".data"" (" """) (string_content ".data") (" """)) (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "DAT_001637d0 = FUN_00125ca0(&DAT_0013b3b5,0);" (assignment_expression "DAT_001637d0 = FUN_00125ca0(&DAT_0013b3b5,0)" (identifier "DAT_001637d0") (= "=") (call_expression "FUN_00125ca0(&DAT_0013b3b5,0)" (identifier "FUN_00125ca0") (argument_list "(&DAT_0013b3b5,0)" (( "(") (pointer_expression "&DAT_0013b3b5" (& "&") (identifier "DAT_0013b3b5")) (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "uVar8 = *(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18);" (assignment_expression "uVar8 = *(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18)" (identifier "uVar8") (= "=") (pointer_expression "*(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18)" (* "*") (cast_expression "(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(long *)(DAT_00163a50 + 8) + 0x18)" (( "(") (binary_expression "*(long *)(DAT_00163a50 + 8) + 0x18" (pointer_expression "*(long *)(DAT_00163a50 + 8)" (* "*") (cast_expression "(long *)(DAT_00163a50 + 8)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(DAT_00163a50 + 8)" (( "(") (binary_expression "DAT_00163a50 + 8" (identifier "DAT_00163a50") (+ "+") (number_literal "8")) () ")")))) (+ "+") (number_literal "0x18")) () ")"))))) (; ";")) (expression_statement "bfd_set_section_flags(DAT_00163a50,DAT_00163930,uVar8 & 0x1f);" (call_expression "bfd_set_section_flags(DAT_00163a50,DAT_00163930,uVar8 & 0x1f)" (identifier "bfd_set_section_flags") (argument_list "(DAT_00163a50,DAT_00163930,uVar8 & 0x1f)" (( "(") (identifier "DAT_00163a50") (, ",") (identifier "DAT_00163930") (, ",") (binary_expression "uVar8 & 0x1f" (identifier "uVar8") (& "&") (number_literal "0x1f")) () ")"))) (; ";")) (expression_statement "bfd_set_section_flags(DAT_00163a50,DAT_00163868,uVar8 & 0x27);" (call_expression "bfd_set_section_flags(DAT_00163a50,DAT_00163868,uVar8 & 0x27)" (identifier "bfd_set_section_flags") (argument_list "(DAT_00163a50,DAT_00163868,uVar8 & 0x27)" (( "(") (identifier "DAT_00163a50") (, ",") (identifier "DAT_00163868") (, ",") (binary_expression "uVar8 & 0x27" (identifier "uVar8") (& "&") (number_literal "0x27")) () ")"))) (; ";")) (expression_statement "plVar15 = __ptr_00 + 1;" (assignment_expression "plVar15 = __ptr_00 + 1" (identifier "plVar15") (= "=") (binary_expression "__ptr_00 + 1" (identifier "__ptr_00") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "bfd_set_section_flags(DAT_00163a50,DAT_001637d0,uVar8 & 1);" (call_expression "bfd_set_section_flags(DAT_00163a50,DAT_001637d0,uVar8 & 1)" (identifier "bfd_set_section_flags") (argument_list "(DAT_00163a50,DAT_001637d0,uVar8 & 1)" (( "(") (identifier "DAT_00163a50") (, ",") (identifier "DAT_001637d0") (, ",") (binary_expression "uVar8 & 1" (identifier "uVar8") (& "&") (number_literal "1")) () ")"))) (; ";")) (expression_statement "pbVar1 = (byte *)(*(long *)(DAT_001637d0 + 0xa8) + 8);" (assignment_expression "pbVar1 = (byte *)(*(long *)(DAT_001637d0 + 0xa8) + 8)" (identifier "pbVar1") (= "=") (cast_expression "(byte *)(*(long *)(DAT_001637d0 + 0xa8) + 8)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(long *)(DAT_001637d0 + 0xa8) + 8)" (( "(") (binary_expression "*(long *)(DAT_001637d0 + 0xa8) + 8" (pointer_expression "*(long *)(DAT_001637d0 + 0xa8)" (* "*") (cast_expression "(long *)(DAT_001637d0 + 0xa8)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(DAT_001637d0 + 0xa8)" (( "(") (binary_expression "DAT_001637d0 + 0xa8" (identifier "DAT_001637d0") (+ "+") (number_literal "0xa8")) () ")")))) (+ "+") (number_literal "8")) () ")")))) (; ";")) (expression_statement "*pbVar1 = *pbVar1 | 2;" (assignment_expression "*pbVar1 = *pbVar1 | 2" (pointer_expression "*pbVar1" (* "*") (identifier "pbVar1")) (= "=") (binary_expression "*pbVar1 | 2" (pointer_expression "*pbVar1" (* "*") (identifier "pbVar1")) (| "|") (number_literal "2"))) (; ";")) (expression_statement "FUN_00125ca0("*ABS*",0);" (call_expression "FUN_00125ca0("*ABS*",0)" (identifier "FUN_00125ca0") (argument_list "("*ABS*",0)" (( "(") (string_literal ""*ABS*"" (" """) (string_content "*ABS*") (" """)) (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "FUN_00125ca0(&DAT_0013b3c0,0);" (call_expression "FUN_00125ca0(&DAT_0013b3c0,0)" (identifier "FUN_00125ca0") (argument_list "(&DAT_0013b3c0,0)" (( "(") (pointer_expression "&DAT_0013b3c0" (& "&") (identifier "DAT_0013b3c0")) (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "DAT_00163898 = FUN_00125ca0("*GAS `reg\' section*",0);" (assignment_expression "DAT_00163898 = FUN_00125ca0("*GAS `reg\' section*",0)" (identifier "DAT_00163898") (= "=") (call_expression "FUN_00125ca0("*GAS `reg\' section*",0)" (identifier "FUN_00125ca0") (argument_list "("*GAS `reg\' section*",0)" (( "(") (string_literal ""*GAS `reg\' section*"" (" """) (string_content "*GAS `reg") (escape_sequence "\'") (string_content " section*") (" """)) (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "DAT_001637c0 = FUN_00125ca0("*GAS `expr\' section*",0);" (assignment_expression "DAT_001637c0 = FUN_00125ca0("*GAS `expr\' section*",0)" (identifier "DAT_001637c0") (= "=") (call_expression "FUN_00125ca0("*GAS `expr\' section*",0)" (identifier "FUN_00125ca0") (argument_list "("*GAS `expr\' section*",0)" (( "(") (string_literal ""*GAS `expr\' section*"" (" """) (string_content "*GAS `expr") (escape_sequence "\'") (string_content " section*") (" """)) (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "FUN_00125d00(DAT_00163930,0);" (call_expression "FUN_00125d00(DAT_00163930,0)" (identifier "FUN_00125d00") (argument_list "(DAT_00163930,0)" (( "(") (identifier "DAT_00163930") (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "FUN_00132b90();" (call_expression "FUN_00132b90()" (identifier "FUN_00132b90") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "FUN_00135be0();" (call_expression "FUN_00135be0()" (identifier "FUN_00135be0") (argument_list "()" (( "(") () ")"))) (; ";")) (if_statement "if (uVar5 == 1) {\nLAB_00108d46:\n      FUN_001239f0(&DAT_00142ab6);\n    }\n    else {\n      __s = __ptr_00 + (ulong)(uVar5 - 2) + 2;\n      __ptr_00 = (long *)0x0;\n      do {\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      } while (plVar15 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }" (if "if") (parenthesized_expression "(uVar5 == 1)" (( "(") (binary_expression "uVar5 == 1" (identifier "uVar5") (== "==") (number_literal "1")) () ")")) (compound_statement "{\nLAB_00108d46:\n      FUN_001239f0(&DAT_00142ab6);\n    }" ({ "{") (labeled_statement "LAB_00108d46:\n      FUN_001239f0(&DAT_00142ab6);" (statement_identifier "LAB_00108d46") (: ":") (expression_statement "FUN_001239f0(&DAT_00142ab6);" (call_expression "FUN_001239f0(&DAT_00142ab6)" (identifier "FUN_001239f0") (argument_list "(&DAT_00142ab6)" (( "(") (pointer_expression "&DAT_00142ab6" (& "&") (identifier "DAT_00142ab6")) () ")"))) (; ";"))) (} "}")) (else_clause "else {\n      __s = __ptr_00 + (ulong)(uVar5 - 2) + 2;\n      __ptr_00 = (long *)0x0;\n      do {\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      } while (plVar15 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }" (else "else") (compound_statement "{\n      __s = __ptr_00 + (ulong)(uVar5 - 2) + 2;\n      __ptr_00 = (long *)0x0;\n      do {\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      } while (plVar15 != __s);\n      if ((int)__ptr_00 == 0) goto LAB_00108d46;\n    }" ({ "{") (expression_statement "__s = __ptr_00 + (ulong)(uVar5 - 2) + 2;" (assignment_expression "__s = __ptr_00 + (ulong)(uVar5 - 2) + 2" (identifier "__s") (= "=") (binary_expression "__ptr_00 + (ulong)(uVar5 - 2) + 2" (binary_expression "__ptr_00 + (ulong)(uVar5 - 2)" (identifier "__ptr_00") (+ "+") (call_expression "(ulong)(uVar5 - 2)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar5 - 2)" (( "(") (binary_expression "uVar5 - 2" (identifier "uVar5") (- "-") (number_literal "2")) () ")")))) (+ "+") (number_literal "2"))) (; ";")) (expression_statement "__ptr_00 = (long *)0x0;" (assignment_expression "__ptr_00 = (long *)0x0" (identifier "__ptr_00") (= "=") (cast_expression "(long *)0x0" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (do_statement "do {\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      } while (plVar15 != __s);" (do "do") (compound_statement "{\n        if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }\n        plVar15 = plVar15 + 1;\n      }" ({ "{") (if_statement "if (*plVar15 != 0) {\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }" (if "if") (parenthesized_expression "(*plVar15 != 0)" (( "(") (binary_expression "*plVar15 != 0" (pointer_expression "*plVar15" (* "*") (identifier "plVar15")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);\n          FUN_001239f0();\n        }" ({ "{") (expression_statement "__ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);" (assignment_expression "__ptr_00 = (long *)(ulong)((int)__ptr_00 + 1)" (identifier "__ptr_00") (= "=") (cast_expression "(long *)(ulong)((int)__ptr_00 + 1)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(ulong)((int)__ptr_00 + 1)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "((int)__ptr_00 + 1)" (( "(") (binary_expression "(int)__ptr_00 + 1" (cast_expression "(int)__ptr_00" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "__ptr_00")) (+ "+") (number_literal "1")) () ")"))))) (; ";")) (expression_statement "FUN_001239f0();" (call_expression "FUN_001239f0()" (identifier "FUN_001239f0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "plVar15 = plVar15 + 1;" (assignment_expression "plVar15 = plVar15 + 1" (identifier "plVar15") (= "=") (binary_expression "plVar15 + 1" (identifier "plVar15") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(plVar15 != __s)" (( "(") (binary_expression "plVar15 != __s" (identifier "plVar15") (!= "!=") (identifier "__s")) () ")")) (; ";")) (if_statement "if ((int)__ptr_00 == 0) goto LAB_00108d46;" (if "if") (parenthesized_expression "((int)__ptr_00 == 0)" (( "(") (binary_expression "(int)__ptr_00 == 0" (cast_expression "(int)__ptr_00" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "__ptr_00")) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00108d46;" (goto "goto") (statement_identifier "LAB_00108d46") (; ";"))) (} "}")))) (expression_statement "FUN_0010c560(0xffffffff);" (call_expression "FUN_0010c560(0xffffffff)" (identifier "FUN_0010c560") (argument_list "(0xffffffff)" (( "(") (number_literal "0xffffffff") () ")"))) (; ";")) (if_statement "if (DAT_00163878 != 0 || _DAT_001638a8 != 0) {\n      uVar11 = FUN_00125ca0(".note.GNU-stack",0);\n      bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18);\n    }" (if "if") (parenthesized_expression "(DAT_00163878 != 0 || _DAT_001638a8 != 0)" (( "(") (binary_expression "DAT_00163878 != 0 || _DAT_001638a8 != 0" (binary_expression "DAT_00163878 != 0" (identifier "DAT_00163878") (!= "!=") (number_literal "0")) (|| "||") (binary_expression "_DAT_001638a8 != 0" (identifier "_DAT_001638a8") (!= "!=") (number_literal "0"))) () ")")) (compound_statement "{\n      uVar11 = FUN_00125ca0(".note.GNU-stack",0);\n      bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18);\n    }" ({ "{") (expression_statement "uVar11 = FUN_00125ca0(".note.GNU-stack",0);" (assignment_expression "uVar11 = FUN_00125ca0(".note.GNU-stack",0)" (identifier "uVar11") (= "=") (call_expression "FUN_00125ca0(".note.GNU-stack",0)" (identifier "FUN_00125ca0") (argument_list "(".note.GNU-stack",0)" (( "(") (string_literal "".note.GNU-stack"" (" """) (string_content ".note.GNU-stack") (" """)) (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18);" (call_expression "bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18)" (identifier "bfd_set_section_flags") (argument_list "(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18)" (( "(") (identifier "DAT_00163a50") (, ",") (identifier "uVar11") (, ",") (binary_expression "(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18" (parenthesized_expression "(-(uint)(DAT_00163878 == 0) & 0xfffffff0)" (( "(") (binary_expression "-(uint)(DAT_00163878 == 0) & 0xfffffff0" (unary_expression "-(uint)(DAT_00163878 == 0)" (- "-") (call_expression "(uint)(DAT_00163878 == 0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(DAT_00163878 == 0)" (( "(") (binary_expression "DAT_00163878 == 0" (identifier "DAT_00163878") (== "==") (number_literal "0")) () ")")))) (& "&") (number_literal "0xfffffff0")) () ")")) (+ "+") (number_literal "0x18")) () ")"))) (; ";")) (} "}"))) (expression_statement "FUN_0010e390();" (call_expression "FUN_0010e390()" (identifier "FUN_0010e390") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "FUN_00111a40();" (call_expression "FUN_00111a40()" (identifier "FUN_00111a40") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "DAT_00162ee0 = 0;" (assignment_expression "DAT_00162ee0 = 0" (identifier "DAT_00162ee0") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar6 = FUN_00116d00();" (assignment_expression "iVar6 = FUN_00116d00()" (identifier "iVar6") (= "=") (call_expression "FUN_00116d00()" (identifier "FUN_00116d00") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar6 != 0) {\n      FUN_0012e000();\n      __s = local_198;\n      uVar5 = FUN_0011bf10();\n      __ptr_00 = (long *)(ulong)uVar5;\n      uVar8 = FUN_0011bf20();\n      plVar15 = (long *)(ulong)uVar8;\n      pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5);\n      sprintf((char *)__s,pcVar12,(ulong)uVar5);\n      pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5);\n      sprintf((char *)&local_c8,pcVar12,(ulong)uVar8);\n      if ((DAT_001637f4 != 0) && (uVar5 != 0)) {\n        if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }\n      }\n      if ((int)plVar15 == 0) {\n        DAT_00162ee0 = 1;\n      }\n      else if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }\n    }" (if "if") (parenthesized_expression "(iVar6 != 0)" (( "(") (binary_expression "iVar6 != 0" (identifier "iVar6") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      FUN_0012e000();\n      __s = local_198;\n      uVar5 = FUN_0011bf10();\n      __ptr_00 = (long *)(ulong)uVar5;\n      uVar8 = FUN_0011bf20();\n      plVar15 = (long *)(ulong)uVar8;\n      pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5);\n      sprintf((char *)__s,pcVar12,(ulong)uVar5);\n      pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5);\n      sprintf((char *)&local_c8,pcVar12,(ulong)uVar8);\n      if ((DAT_001637f4 != 0) && (uVar5 != 0)) {\n        if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }\n      }\n      if ((int)plVar15 == 0) {\n        DAT_00162ee0 = 1;\n      }\n      else if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }\n    }" ({ "{") (expression_statement "FUN_0012e000();" (call_expression "FUN_0012e000()" (identifier "FUN_0012e000") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "__s = local_198;" (assignment_expression "__s = local_198" (identifier "__s") (= "=") (identifier "local_198")) (; ";")) (expression_statement "uVar5 = FUN_0011bf10();" (assignment_expression "uVar5 = FUN_0011bf10()" (identifier "uVar5") (= "=") (call_expression "FUN_0011bf10()" (identifier "FUN_0011bf10") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "__ptr_00 = (long *)(ulong)uVar5;" (assignment_expression "__ptr_00 = (long *)(ulong)uVar5" (identifier "__ptr_00") (= "=") (cast_expression "(long *)(ulong)uVar5" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (cast_expression "(ulong)uVar5" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar5")))) (; ";")) (expression_statement "uVar8 = FUN_0011bf20();" (assignment_expression "uVar8 = FUN_0011bf20()" (identifier "uVar8") (= "=") (call_expression "FUN_0011bf20()" (identifier "FUN_0011bf20") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "plVar15 = (long *)(ulong)uVar8;" (assignment_expression "plVar15 = (long *)(ulong)uVar8" (identifier "plVar15") (= "=") (cast_expression "(long *)(ulong)uVar8" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (cast_expression "(ulong)uVar8" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar8")))) (; ";")) (expression_statement "pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5);" (assignment_expression "pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5)" (identifier "pcVar12") (= "=") (cast_expression "(char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5)" (identifier "dcngettext") (argument_list "(0,"%d warning","%d warnings",(long)(int)uVar5,5)" (( "(") (number_literal "0") (, ",") (string_literal ""%d warning"" (" """) (string_content "%d warning") (" """)) (, ",") (string_literal ""%d warnings"" (" """) (string_content "%d warnings") (" """)) (, ",") (cast_expression "(long)(int)uVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (cast_expression "(int)uVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar5"))) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "sprintf((char *)__s,pcVar12,(ulong)uVar5);" (call_expression "sprintf((char *)__s,pcVar12,(ulong)uVar5)" (identifier "sprintf") (argument_list "((char *)__s,pcVar12,(ulong)uVar5)" (( "(") (cast_expression "(char *)__s" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "__s")) (, ",") (identifier "pcVar12") (, ",") (cast_expression "(ulong)uVar5" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar5")) () ")"))) (; ";")) (expression_statement "pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5);" (assignment_expression "pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5)" (identifier "pcVar12") (= "=") (cast_expression "(char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5)" (identifier "dcngettext") (argument_list "(0,"%d error","%d errors",(long)(int)uVar8,5)" (( "(") (number_literal "0") (, ",") (string_literal ""%d error"" (" """) (string_content "%d error") (" """)) (, ",") (string_literal ""%d errors"" (" """) (string_content "%d errors") (" """)) (, ",") (cast_expression "(long)(int)uVar8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (cast_expression "(int)uVar8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar8"))) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "sprintf((char *)&local_c8,pcVar12,(ulong)uVar8);" (call_expression "sprintf((char *)&local_c8,pcVar12,(ulong)uVar8)" (identifier "sprintf") (argument_list "((char *)&local_c8,pcVar12,(ulong)uVar8)" (( "(") (cast_expression "(char *)&local_c8" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&local_c8" (& "&") (identifier "local_c8"))) (, ",") (identifier "pcVar12") (, ",") (cast_expression "(ulong)uVar8" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar8")) () ")"))) (; ";")) (if_statement "if ((DAT_001637f4 != 0) && (uVar5 != 0)) {\n        if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }\n      }" (if "if") (parenthesized_expression "((DAT_001637f4 != 0) && (uVar5 != 0))" (( "(") (binary_expression "(DAT_001637f4 != 0) && (uVar5 != 0)" (parenthesized_expression "(DAT_001637f4 != 0)" (( "(") (binary_expression "DAT_001637f4 != 0" (identifier "DAT_001637f4") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(uVar5 != 0)" (( "(") (binary_expression "uVar5 != 0" (identifier "uVar5") (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n        if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }\n      }" ({ "{") (if_statement "if (uVar8 == 0) {\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }\n        else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }" (if "if") (parenthesized_expression "(uVar8 == 0)" (( "(") (binary_expression "uVar8 == 0" (identifier "uVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          plVar15 = (long *)(ulong)uVar5;\n          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);\n          FUN_0011c1c0(uVar11,__s);\n        }" ({ "{") (expression_statement "plVar15 = (long *)(ulong)uVar5;" (assignment_expression "plVar15 = (long *)(ulong)uVar5" (identifier "plVar15") (= "=") (cast_expression "(long *)(ulong)uVar5" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (cast_expression "(ulong)uVar5" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar5")))) (; ";")) (expression_statement "uVar11 = dcgettext(0,"%s, treating warnings as errors",5);" (assignment_expression "uVar11 = dcgettext(0,"%s, treating warnings as errors",5)" (identifier "uVar11") (= "=") (call_expression "dcgettext(0,"%s, treating warnings as errors",5)" (identifier "dcgettext") (argument_list "(0,"%s, treating warnings as errors",5)" (( "(") (number_literal "0") (, ",") (string_literal ""%s, treating warnings as errors"" (" """) (string_content "%s, treating warnings as errors") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_0011c1c0(uVar11,__s);" (call_expression "FUN_0011c1c0(uVar11,__s)" (identifier "FUN_0011c1c0") (argument_list "(uVar11,__s)" (( "(") (identifier "uVar11") (, ",") (identifier "__s") () ")"))) (; ";")) (} "}")) (else_clause "else {\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }" (else "else") (compound_statement "{\n          plVar15 = (long *)(ulong)(uVar8 + uVar5);\n        }" ({ "{") (expression_statement "plVar15 = (long *)(ulong)(uVar8 + uVar5);" (assignment_expression "plVar15 = (long *)(ulong)(uVar8 + uVar5)" (identifier "plVar15") (= "=") (cast_expression "(long *)(ulong)(uVar8 + uVar5)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(ulong)(uVar8 + uVar5)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar8 + uVar5)" (( "(") (binary_expression "uVar8 + uVar5" (identifier "uVar8") (+ "+") (identifier "uVar5")) () ")"))))) (; ";")) (} "}")))) (} "}"))) (if_statement "if ((int)plVar15 == 0) {\n        DAT_00162ee0 = 1;\n      }\n      else if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }" (if "if") (parenthesized_expression "((int)plVar15 == 0)" (( "(") (binary_expression "(int)plVar15 == 0" (cast_expression "(int)plVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "plVar15")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        DAT_00162ee0 = 1;\n      }" ({ "{") (expression_statement "DAT_00162ee0 = 1;" (assignment_expression "DAT_00162ee0 = 1" (identifier "DAT_00162ee0") (= "=") (number_literal "1")) (; ";")) (} "}")) (else_clause "else if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }" (else "else") (if_statement "if (DAT_00163870 != '\0') {\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }" (if "if") (parenthesized_expression "(DAT_00163870 != '\0')" (( "(") (binary_expression "DAT_00163870 != '\0'" (identifier "DAT_00163870") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        DAT_00162ee0 = 1;\n        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);\n        fprintf(stderr,pcVar12,&local_c8,__s);\n      }" ({ "{") (expression_statement "DAT_00162ee0 = 1;" (assignment_expression "DAT_00162ee0 = 1" (identifier "DAT_00162ee0") (= "=") (number_literal "1")) (; ";")) (expression_statement "pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);" (assignment_expression "pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5)" (identifier "pcVar12") (= "=") (cast_expression "(char *)dcgettext(0,"%s, %s, generating bad object file\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"%s, %s, generating bad object file\n",5)" (identifier "dcgettext") (argument_list "(0,"%s, %s, generating bad object file\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""%s, %s, generating bad object file\n"" (" """) (string_content "%s, %s, generating bad object file") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "fprintf(stderr,pcVar12,&local_c8,__s);" (call_expression "fprintf(stderr,pcVar12,&local_c8,__s)" (identifier "fprintf") (argument_list "(stderr,pcVar12,&local_c8,__s)" (( "(") (identifier "stderr") (, ",") (identifier "pcVar12") (, ",") (pointer_expression "&local_c8" (& "&") (identifier "local_c8")) (, ",") (identifier "__s") () ")"))) (; ";")) (} "}"))))) (} "}"))) (expression_statement "fflush(stderr);" (call_expression "fflush(stderr)" (identifier "fflush") (argument_list "(stderr)" (( "(") (identifier "stderr") () ")"))) (; ";")) (expression_statement "FUN_00117f20(DAT_00162ed8,param_2);" (call_expression "FUN_00117f20(DAT_00162ed8,param_2)" (identifier "FUN_00117f20") (argument_list "(DAT_00162ed8,param_2)" (( "(") (identifier "DAT_00162ed8") (, ",") (identifier "param_2") () ")"))) (; ";")) (expression_statement "FUN_001167a0();" (call_expression "FUN_001167a0()" (identifier "FUN_001167a0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "iVar6 = FUN_0011bf20();" (assignment_expression "iVar6 = FUN_0011bf20()" (identifier "iVar6") (= "=") (call_expression "FUN_0011bf20()" (identifier "FUN_0011bf20") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar6 != 0) break;" (if "if") (parenthesized_expression "(iVar6 != 0)" (( "(") (binary_expression "iVar6 != 0" (identifier "iVar6") (!= "!=") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "FUN_0010c930();" (call_expression "FUN_0010c930()" (identifier "FUN_0010c930") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "xexit(0);" (call_expression "xexit(0)" (identifier "xexit") (argument_list "(0)" (( "(") (number_literal "0") () ")"))) (; ";")) (labeled_statement "LAB_00108bff:\n    FUN_0013abc0(FUN_0010a8a0);" (statement_identifier "LAB_00108bff") (: ":") (expression_statement "FUN_0013abc0(FUN_0010a8a0);" (call_expression "FUN_0013abc0(FUN_0010a8a0)" (identifier "FUN_0013abc0") (argument_list "(FUN_0010a8a0)" (( "(") (identifier "FUN_0010a8a0") () ")"))) (; ";"))) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (expression_statement "xexit(1);" (call_expression "xexit(1)" (identifier "xexit") (argument_list "(1)" (( "(") (number_literal "1") () ")"))) (; ";")) (expression_statement "iVar6 = strcasecmp(__s1,"warning");" (assignment_expression "iVar6 = strcasecmp(__s1,"warning")" (identifier "iVar6") (= "=") (call_expression "strcasecmp(__s1,"warning")" (identifier "strcasecmp") (argument_list "(__s1,"warning")" (( "(") (identifier "__s1") (, ",") (string_literal ""warning"" (" """) (string_content "warning") (" """)) () ")")))) (; ";")) (if_statement "if (iVar6 != 0) {\n    uVar11 = dcgettext(0,"Invalid --size-check= option: `%s\'",5);\n                    \n    FUN_0011c360(uVar11,__s1);\n  }" (if "if") (parenthesized_expression "(iVar6 != 0)" (( "(") (binary_expression "iVar6 != 0" (identifier "iVar6") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    uVar11 = dcgettext(0,"Invalid --size-check= option: `%s\'",5);\n                    \n    FUN_0011c360(uVar11,__s1);\n  }" ({ "{") (expression_statement "uVar11 = dcgettext(0,"Invalid --size-check= option: `%s\'",5);" (assignment_expression "uVar11 = dcgettext(0,"Invalid --size-check= option: `%s\'",5)" (identifier "uVar11") (= "=") (call_expression "dcgettext(0,"Invalid --size-check= option: `%s\'",5)" (identifier "dcgettext") (argument_list "(0,"Invalid --size-check= option: `%s\'",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Invalid --size-check= option: `%s\'"" (" """) (string_content "Invalid --size-check= option: `%s") (escape_sequence "\'") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_0011c360(uVar11,__s1);" (call_expression "FUN_0011c360(uVar11,__s1)" (identifier "FUN_0011c360") (argument_list "(uVar11,__s1)" (( "(") (identifier "uVar11") (, ",") (identifier "__s1") () ")"))) (; ";")) (} "}"))) (expression_statement "DAT_001638b0 = 1;" (assignment_expression "DAT_001638b0 = 1" (identifier "DAT_001638b0") (= "=") (number_literal "1")) (; ";")) (goto_statement "goto LAB_00107958;" (goto "goto") (statement_identifier "LAB_00107958") (; ";")) (} "}")))

int function_1(int argc,char **argv)

{
  type_1 *pbVar1;
  var_1 (*pauVar2) [16];
  type_2 uVar3;
  type_3 *pdVar4;
  type_4 *puVar5;
  size_t var_22;
  type_5 uVar7;
  type_5 var_25;
  int var_27;
  int var_37;
  type_5 var_61;
  void *__ptr;
  char **var_16;
  char **ppcVar12;
  char *pcVar13;
  type_6 *s;
  type_7 paVar14;
  char *format;
  long var_17;
  type_8 var_18;
  char **var_66;
  char *pcVar18;
  type_2 *var_19;
  type_2 *var_20;
  char **var_67;
  type_1 bVar21;
  char **local_1a8;
  type_5 local_1a0;
  type_5 var_23;
  char warn_msg [50];
  type_9 sob;
  type_9 sib;
  
  bVar21 = 0;
  local_1a8 = argv;
  var_23 = argc;
  start_time = var_2();
  var_3();
  var_4(5,"");
  var_4(0,"");
  var_5(&DAT_0013b28d,"/usr/share/locale");
  var_6(&DAT_0013b28d);
  if (var_7 != 0) {
    chunksize = 0x40;
  }
  myname = *local_1a8;
  var_8();
  var_9((int *)&var_23,&local_1a8);
  out_file_name = "a.out";
  var_10();
  var_11();
  var_12(myname);
  __ptr = (void *)var_13(std_shortopts_14525,md_shortopts,0);
  var_16 = (char **)var_14(var_15 + 0x580);
  puVar5 = std_longopts_14566;
  var_16[0xab] = DAT_0014ef18;
  *var_16 = puVar5;
  var_17 = (long)var_16 - (long)((type_8)(var_16 + 1) & 0xfffffffffffffff8);
  var_19 = (type_2 *)((long)&std_longopts_14566 - var_17);
  var_20 = (type_2 *)((type_8)(var_16 + 1) & 0xfffffffffffffff8);
  for (var_18 = (type_8)((int)var_17 + 0x560U >> 3); var_22 = var_15, var_18 != 0;
      var_18 = var_18 - 1) {
    *var_20 = *var_19;
    var_19 = var_19 + (type_8)bVar21 * -2 + 1;
    var_20 = var_20 + (type_8)bVar21 * -2 + 1;
  }
  var_21(var_16 + 0xac,md_longopts,var_15);
  uVar7 = var_23;
  var_67 = local_1a8;
  pauVar2 = (var_1 (*) [16])((long)var_16 + var_22 + 0x560);
  *pauVar2 = (var_1  [16])0x0;
  var_66 = (char **)&DAT_0013cb10;
  pauVar2[1] = (var_1  [16])0x0;
  ppcVar12 = (char **)var_14((long)(int)(var_23 + 1) << 3);
  local_1a0 = 1;
  pcVar13 = *var_67;
  ppcVar12[1] = (char *)0x0;
  *ppcVar12 = pcVar13;
LAB_00107958:
  while( true ) {
    var_25 = var_24(uVar7,var_67,__ptr,var_16,&sib);
    pcVar13 = (char *)(type_8)var_25;
    if (var_25 == 0xffffffff) break;
    if (var_25 < 0xba) {
                    /* WARNING: Could not recover jumptable at 0x00107989. Too many branches */
                    /* WARNING: Treating indirect jump as call */
      var_27 = (*(type_10 *)((long)*(int *)((long)var_66 + (type_8)var_25 * 4) + (long)var_66))();
      return var_27;
    }
    var_27 = var_26(var_25,var_28);
    if (var_27 == 0) {
      if (var_25 != 0x76) {
        pcVar18 = var_28;
        if (var_28 == (char *)0x0) {
          pcVar18 = "";
        }
        format = (char *)var_29(0,"unrecognized option -%c%s",5);
        var_30(format,pcVar13,pcVar18);
                    /* WARNING: Subroutine does not return */
        var_31(1);
      }
      if (var_32 == 0) {
        var_33();
      }
      verbose = 1;
    }
  }
  var_34(__ptr);
  var_34(var_16);
  var_23 = local_1a0;
  local_1a8 = ppcVar12;
  var_35();
  if (((1 < (int)var_23) && (var_27 = var_36(1,out_file_name,(type_9 *)&sob), var_27 == 0)) &&
     (1 < (int)var_23)) {
    var_17 = 8;
    var_27 = 1;
    do {
      var_37 = var_36(1,*(char **)((long)local_1a8 + var_17),(type_9 *)&sib);
      pcVar18 = out_file_name;
      if (((var_37 == 0) && (sob.st_ino == sib.st_ino)) &&
         ((sib.st_ino != 0 && (sib.st_dev == sob.st_dev)))) {
        out_file_name = (char *)0x0;
        uVar3 = *(type_2 *)((long)local_1a8 + var_17);
        pcVar13 = (char *)var_29(0,"The input \'%s\' and output \'%s\' files are the same",5);
                    /* WARNING: Subroutine does not return */
        var_38(pcVar13,uVar3,pcVar18);
      }
      var_27 = var_27 + 1;
      var_17 = var_17 + 8;
    } while (var_27 < (int)var_23);
  }
  var_39();
  var_40();
  var_41();
  var_42();
  var_43();
  var_44();
  var_45(close_output_file);
  if (var_46 != '\0') goto LAB_00108bff;
  do {
    var_47(flag_macro_alternate,flag_mri,0,macro_expr);
    var_48(out_file_name);
    if (var_49 == (type_11 *)0x0) {
                    /* WARNING: Subroutine does not return */
      var_50("../../gas/as.c",0x519,"main");
    }
    var_51();
    var_52();
    var_53(".gasversion.",(type_7)(var_54 + 0x230),0x5a3d,
                      &predefined_address_frag);
    var_16 = local_1a8;
    var_25 = var_23;
    while (local_1a8 = var_16, var_23 = var_25, var_55 != (type_3 *)0x0) {
      s = var_56(var_55->name,(type_7)(var_54 + 0x230),var_55->value,
                     &zero_address_frag);
      var_57(s);
      var_58(s);
      pdVar4 = var_55->next;
      var_34(var_55);
      var_55 = pdVar4;
      var_16 = local_1a8;
      var_25 = var_23;
    }
    var_67 = (char **)(type_8)var_25;
    need_pass_2 = 0;
    text_section = var_59(".text",0);
    data_section = var_59(".data",0);
    bss_section = var_59(".bss",0);
    var_61 = var_49->xvec->section_flags;
    var_60(var_49,text_section,var_61 & 0x1f);
    var_60(var_49,data_section,var_61 & 0x27);
    var_66 = var_16 + 1;
    var_60(var_49,bss_section,var_61 & 1);
    pbVar1 = (type_1 *)((long)bss_section->userdata + 8);
    *pbVar1 = *pbVar1 | 2;
    var_59("*ABS*",0);
    var_59("*UND*",0);
    reg_section = var_59("*GAS `reg\' section*",0);
    expr_section = var_59("*GAS `expr\' section*",0);
    var_62(text_section,0);
    var_63();
    var_64();
    if (var_25 == 1) {
LAB_00108d46:
      var_65("");
    }
    else {
      var_67 = var_16 + (type_8)(var_25 - 2) + 2;
      var_16 = (char **)0x0;
      do {
        if (*var_66 != (char *)0x0) {
          var_16 = (char **)(type_8)((int)var_16 + 1);
          var_65(*var_66);
        }
        var_66 = var_66 + 1;
      } while (var_66 != var_67);
      if ((int)var_16 == 0) goto LAB_00108d46;
    }
    var_68(-1);
    if (var_69 != 0 || var_70 != 0) {
      paVar14 = var_59(".note.GNU-stack",0);
      var_60(var_49,paVar14,(-(type_5)(var_69 == 0) & 0xfffffff0) + 0x18);
    }
    var_71();
    var_72();
    keep_it = 0;
    var_27 = var_73();
    if (var_27 != 0) {
      var_74();
      var_67 = (char **)warn_msg;
      var_25 = var_75();
      var_16 = (char **)(type_8)var_25;
      var_61 = var_76();
      var_66 = (char **)(type_8)var_61;
      pcVar18 = (char *)var_77(0,"%d warning","%d warnings",(long)(int)var_25,5);
      var_78((char *)var_67,pcVar18,(type_8)var_25);
      pcVar18 = (char *)var_77(0,"%d error","%d errors",(long)(int)var_61,5);
      var_78((char *)&sib,pcVar18,(type_8)var_61);
      if ((var_79 != 0) && (var_25 != 0)) {
        if (var_61 == 0) {
          var_66 = (char **)(type_8)var_25;
          pcVar18 = (char *)var_29(0,"%s, treating warnings as errors",5);
          var_30(pcVar18,var_67);
        }
        else {
          var_66 = (char **)(type_8)(var_61 + var_25);
        }
      }
      if ((int)var_66 == 0) {
        keep_it = 1;
      }
      else if (var_80 != '\0') {
        keep_it = 1;
        pcVar18 = (char *)var_29(0,"%s, %s, generating bad object file\n",5);
        var_81(stderr,pcVar18,&sib,var_67);
      }
    }
    var_82(stderr);
    var_83(listing_filename,argv);
    var_84();
    var_27 = var_76();
    if (var_27 != 0) break;
    var_85();
    var_86(0);
LAB_00108bff:
    var_45(dump_statistics);
  } while( true );
  var_86(1);
  var_27 = var_87(pcVar13,"warning");
  if (var_27 != 0) {
    pcVar18 = (char *)var_29(0,"Invalid --size-check= option: `%s\'",5);
                    /* WARNING: Subroutine does not return */
    var_38(pcVar18,pcVar13);
  }
  flag_allow_nonconst_size = 1;
  goto LAB_00107958;
}


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

/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */

void MASKED(uint param_1,long *param_2)

{
  byte *pbVar1;
  undefined1 (*pauVar2) [16];
  size_t sVar3;
  uint uVar4;
  uint uVar5;
  int iVar6;
  int iVar7;
  uint uVar8;
  void *__ptr;
  long *__ptr_00;
  long *plVar9;
  undefined8 uVar10;
  undefined8 uVar11;
  char *pcVar12;
  long lVar13;
  ulong uVar14;
  long *plVar15;
  undefined *puVar16;
  undefined8 *puVar17;
  undefined8 *puVar18;
  long *__s;
  char *__s1;
  byte bVar19;
  long *local_1a8;
  uint local_1a0;
  uint local_19c;
  long local_198 [8];
  stat local_158;
  stat local_c8;
  
  bVar19 = 0;
  local_1a8 = param_2;
  local_19c = param_1;
  _DAT_00162ec8 = FUN_0013a800();
  FUN_0011c7a0();
  setlocale(5,"");
  setlocale(0,"");
  bindtextdomain(&DAT_0013b28d,"/usr/share/locale");
  textdomain(&DAT_0013b28d);
  if (DAT_00162eac != 0) {
    DAT_00162eb0 = 0x40;
  }
  DAT_00162ee8 = *local_1a8;
  xmalloc_set_program_name();
  FUN_0013a450(&local_19c,&local_1a8);
  DAT_00163888 = "a.out";
  hex_init();
  bfd_init();
  bfd_set_error_program_name(DAT_00162ee8);
  __ptr = (void *)concat("-JLMRWZa::Dfg::I:o:vwX",PTR_s_O_g_G__0015a840,0);
  __ptr_00 = (long *)xmalloc(DAT_0015a718 + 0x580);
  puVar16 = PTR_s_alternate_0014e9c0;
  __ptr_00[0xab] = DAT_0014ef18;
  *__ptr_00 = (long)puVar16;
  lVar13 = (long)__ptr_00 - (long)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);
  puVar17 = (undefined8 *)((long)&PTR_s_alternate_0014e9c0 - lVar13);
  puVar18 = (undefined8 *)((ulong)(__ptr_00 + 1) & 0xfffffffffffffff8);
  for (uVar14 = (ulong)((int)lVar13 + 0x560U >> 3); sVar3 = DAT_0015a718, uVar14 != 0;
      uVar14 = uVar14 - 1) {
    *puVar18 = *puVar17;
    puVar17 = puVar17 + (ulong)bVar19 * -2 + 1;
    puVar18 = puVar18 + (ulong)bVar19 * -2 + 1;
  }
  memcpy(__ptr_00 + 0xac,&PTR_s_march_0015a740,DAT_0015a718);
  uVar4 = local_19c;
  __s = local_1a8;
  pauVar2 = (undefined1 (*) [16])((long)__ptr_00 + sVar3 + 0x560);
  *pauVar2 = (undefined1  [16])0x0;
  plVar15 = (long *)&DAT_0013cb10;
  pauVar2[1] = (undefined1  [16])0x0;
  plVar9 = (long *)xmalloc((long)(int)(local_19c + 1) << 3);
  local_1a0 = 1;
  lVar13 = *__s;
  plVar9[1] = 0;
  *plVar9 = lVar13;
LAB_00107958:
  while( true ) {
    uVar5 = getopt_long_only(uVar4,__s,__ptr,__ptr_00,&local_c8);
    __s1 = (char *)(ulong)uVar5;
    if (uVar5 == 0xffffffff) break;
    if (uVar5 < 0xba) {
                    /* WARNING: Could not recover jumptable at 0x00107989. Too many branches */
                    /* WARNING: Treating indirect jump as call */
      (*(code *)((long)*(int *)((long)plVar15 + (ulong)uVar5 * 4) + (long)plVar15))();
      return;
    }
    iVar6 = FUN_001347a0(__s1,optarg);
    if (iVar6 == 0) {
      if (uVar5 != 0x76) {
        puVar16 = optarg;
        if (optarg == (undefined *)0x0) {
          puVar16 = &DAT_00142ab6;
        }
        uVar11 = dcgettext(0,"unrecognized option -%c%s",5);
        FUN_0011c1c0(uVar11,__s1,puVar16);
                    /* WARNING: Subroutine does not return */
        exit(1);
      }
      if (DAT_00162ebc == 0) {
        FUN_0010a980();
      }
      _DAT_00162ea8 = 1;
    }
  }
  free(__ptr);
  free(__ptr_00);
  local_19c = local_1a0;
  local_1a8 = plVar9;
  FUN_00134ab0();
  if (((1 < (int)local_19c) && (iVar6 = __xstat(1,DAT_00163888,&local_158), iVar6 == 0)) &&
     (1 < (int)local_19c)) {
    lVar13 = 8;
    iVar6 = 1;
    do {
      iVar7 = __xstat(1,*(char **)((long)local_1a8 + lVar13),&local_c8);
      pcVar12 = DAT_00163888;
      if (((iVar7 == 0) && (local_158.st_ino == local_c8.st_ino)) &&
         ((local_c8.st_ino != 0 && (local_c8.st_dev == local_158.st_dev)))) {
        DAT_00163888 = (char *)0x0;
        uVar11 = *(undefined8 *)((long)local_1a8 + lVar13);
        uVar10 = dcgettext(0,"The input \'%s\' and output \'%s\' files are the same",5);
                    /* WARNING: Subroutine does not return */
        FUN_0011c360(uVar10,uVar11,pcVar12);
      }
      iVar6 = iVar6 + 1;
      lVar13 = lVar13 + 8;
    } while (iVar6 < (int)local_19c);
  }
  FUN_0012a770();
  FUN_00115310();
  FUN_00125b60();
  FUN_0011da80();
  FUN_00116770();
  FUN_00112f40();
  FUN_0013abc0(FUN_0010a950);
  if (DAT_00163940 != '\0') goto LAB_00108bff;
  do {
    FUN_0011a8a0(DAT_00162ec0,DAT_00163950,0,FUN_0010a810);
    FUN_0011c840(DAT_00163888);
    if (DAT_00163a50 == 0) {
                    /* WARNING: Subroutine does not return */
      FUN_0011c450("../../gas/as.c",0x519,&DAT_0013cef7);
    }
    FUN_0012a810();
    FUN_0010e380();
    FUN_00126440(".gasversion.",0x15aad0,0x5a3d,&DAT_001638c0);
    __ptr_00 = local_1a8;
    uVar5 = local_19c;
    while (local_1a8 = __ptr_00, local_19c = uVar5, DAT_00162ed0 != (undefined8 *)0x0) {
      uVar11 = FUN_00127c60(DAT_00162ed0[1],0x15aad0,DAT_00162ed0[2],&DAT_00163800);
      FUN_00129e10(uVar11);
      FUN_00126560(uVar11);
      puVar17 = (undefined8 *)*DAT_00162ed0;
      free(DAT_00162ed0);
      DAT_00162ed0 = puVar17;
      __ptr_00 = local_1a8;
      uVar5 = local_19c;
    }
    __s = (long *)(ulong)uVar5;
    DAT_001637cc = 0;
    DAT_00163930 = FUN_00125ca0(".text",0);
    DAT_00163868 = FUN_00125ca0(".data",0);
    DAT_001637d0 = FUN_00125ca0(&DAT_0013b3b5,0);
    uVar8 = *(uint *)(*(long *)(DAT_00163a50 + 8) + 0x18);
    bfd_set_section_flags(DAT_00163a50,DAT_00163930,uVar8 & 0x1f);
    bfd_set_section_flags(DAT_00163a50,DAT_00163868,uVar8 & 0x27);
    plVar15 = __ptr_00 + 1;
    bfd_set_section_flags(DAT_00163a50,DAT_001637d0,uVar8 & 1);
    pbVar1 = (byte *)(*(long *)(DAT_001637d0 + 0xa8) + 8);
    *pbVar1 = *pbVar1 | 2;
    FUN_00125ca0("*ABS*",0);
    FUN_00125ca0(&DAT_0013b3c0,0);
    DAT_00163898 = FUN_00125ca0("*GAS `reg\' section*",0);
    DAT_001637c0 = FUN_00125ca0("*GAS `expr\' section*",0);
    FUN_00125d00(DAT_00163930,0);
    FUN_00132b90();
    FUN_00135be0();
    if (uVar5 == 1) {
LAB_00108d46:
      FUN_001239f0(&DAT_00142ab6);
    }
    else {
      __s = __ptr_00 + (ulong)(uVar5 - 2) + 2;
      __ptr_00 = (long *)0x0;
      do {
        if (*plVar15 != 0) {
          __ptr_00 = (long *)(ulong)((int)__ptr_00 + 1);
          FUN_001239f0();
        }
        plVar15 = plVar15 + 1;
      } while (plVar15 != __s);
      if ((int)__ptr_00 == 0) goto LAB_00108d46;
    }
    FUN_0010c560(0xffffffff);
    if (DAT_00163878 != 0 || _DAT_001638a8 != 0) {
      uVar11 = FUN_00125ca0(".note.GNU-stack",0);
      bfd_set_section_flags(DAT_00163a50,uVar11,(-(uint)(DAT_00163878 == 0) & 0xfffffff0) + 0x18);
    }
    FUN_0010e390();
    FUN_00111a40();
    DAT_00162ee0 = 0;
    iVar6 = FUN_00116d00();
    if (iVar6 != 0) {
      FUN_0012e000();
      __s = local_198;
      uVar5 = FUN_0011bf10();
      __ptr_00 = (long *)(ulong)uVar5;
      uVar8 = FUN_0011bf20();
      plVar15 = (long *)(ulong)uVar8;
      pcVar12 = (char *)dcngettext(0,"%d warning","%d warnings",(long)(int)uVar5,5);
      sprintf((char *)__s,pcVar12,(ulong)uVar5);
      pcVar12 = (char *)dcngettext(0,"%d error","%d errors",(long)(int)uVar8,5);
      sprintf((char *)&local_c8,pcVar12,(ulong)uVar8);
      if ((DAT_001637f4 != 0) && (uVar5 != 0)) {
        if (uVar8 == 0) {
          plVar15 = (long *)(ulong)uVar5;
          uVar11 = dcgettext(0,"%s, treating warnings as errors",5);
          FUN_0011c1c0(uVar11,__s);
        }
        else {
          plVar15 = (long *)(ulong)(uVar8 + uVar5);
        }
      }
      if ((int)plVar15 == 0) {
        DAT_00162ee0 = 1;
      }
      else if (DAT_00163870 != '\0') {
        DAT_00162ee0 = 1;
        pcVar12 = (char *)dcgettext(0,"%s, %s, generating bad object file\n",5);
        fprintf(stderr,pcVar12,&local_c8,__s);
      }
    }
    fflush(stderr);
    FUN_00117f20(DAT_00162ed8,param_2);
    FUN_001167a0();
    iVar6 = FUN_0011bf20();
    if (iVar6 != 0) break;
    FUN_0010c930();
    xexit(0);
LAB_00108bff:
    FUN_0013abc0(FUN_0010a8a0);
  } while( true );
  xexit(1);
  iVar6 = strcasecmp(__s1,"warning");
  if (iVar6 != 0) {
    uVar11 = dcgettext(0,"Invalid --size-check= option: `%s\'",5);
                    /* WARNING: Subroutine does not return */
    FUN_0011c360(uVar11,__s1);
  }
  DAT_001638b0 = 1;
  goto LAB_00107958;
}

