
/* WARNING: Function: __x86.get_pc_thunk.ax replaced with injection: get_pc_thunk_ax */
/* WARNING: Enum "DT": Some values do not have unique names */
/* DWARF original prototype: void finalize(General_options * this) */

void __thiscall gold::General_options::finalize(General_options *this)

{
  anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
  *paVar1;
  anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
  *paVar2;
  pointer *ppSVar3;
  double dVar4;
  anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
  *paVar5;
  ctype<char> *pcVar6;
  iterator iVar7;
  undefined *puVar8;
  undefined *puVar9;
  ctype<char> cVar10;
  __node_type *__node;
  __node_base *p_Var11;
  undefined4 *__n_elt;
  Object_format OVar12;
  size_t sVar13;
  uint uVar14;
  Dir_list *this_00;
  demangling_styles style;
  char *pcVar15;
  int *piVar16;
  int iVar17;
  ios *this_01;
  size_type sVar18;
  uint uVar19;
  byte *pbVar20;
  byte *pbVar21;
  byte *pbVar22;
  bool bVar23;
  bool bVar24;
  bool bVar25;
  byte bVar26;
  byte *local_1f0;
  undefined1 local_1c0 [4];
  string libpath;
  Search_directory local_1a4;
  Search_directory local_188;
  Search_directory local_16c;
  string line;
  ifstream in;
  size_type local_130;
  anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
  local_12c;
  undefined2 local_11c;
  locale local_110 [28];
  __basic_file<char> local_f4 [60];
  undefined4 auStack_b8 [5];
  undefined **local_a4 [5];
  byte local_90;
  undefined4 local_34;
  undefined2 local_30;
  undefined4 local_2c;
  undefined4 local_28;
  undefined4 local_24;
  undefined4 local_20;
  
  bVar26 = 0;
  bVar25 = (this->strip_all_).value;
  if (bVar25 == false) {
    if ((this->strip_debug_).value != false) goto LAB_000e79ea;
    if ((this->strip_debug_non_line_).value != false) {
      bVar23 = false;
      goto LAB_000e79f9;
    }
    bVar23 = false;
    if ((this->Bshareable_).value != false) goto LAB_000e7a0c;
  }
  else {
    (this->strip_debug_).value = true;
LAB_000e79ea:
    bVar23 = true;
    (this->strip_debug_non_line_).value = true;
LAB_000e79f9:
    (this->strip_debug_gdb_).value = true;
    if ((this->Bshareable_).value != false) {
LAB_000e7a0c:
      (this->shared_).value = true;
    }
    if (((bVar25 != false) && ((this->relocatable_).value != false)) &&
       ((this->strip_all_).value = false, !bVar23)) {
                    /* WARNING: Subroutine does not return */
      do_gold_unreachable("../../gold/options.cc",0x453,"finalize");
    }
  }
  if ((this->dc_).value != false) {
    (this->define_common_).value = true;
  }
  if ((this->dp_).value != false) {
    (this->define_common_).value = true;
  }
  if ((this->define_common_).user_set_via_option == false) {
    (this->define_common_).value = (bool)((this->relocatable_).value ^ 1);
  }
  bVar25 = (this->execstack_).value == false;
  if (bVar25) {
    bVar25 = (this->noexecstack_).value == false;
    if (!bVar25) {
      this->execstack_status_ = EXECSTACK_NO;
    }
  }
  else {
    this->execstack_status_ = EXECSTACK_YES;
  }
  bVar23 = false;
  iVar17 = 5;
  pbVar20 = (byte *)(this->icf_).value;
  pbVar21 = pbVar20;
  pbVar22 = (byte *)0x28e9b2;
  do {
    if (iVar17 == 0) break;
    iVar17 = iVar17 + -1;
    bVar23 = *pbVar21 < *pbVar22;
    bVar25 = *pbVar21 == *pbVar22;
    pbVar21 = pbVar21 + 1;
    pbVar22 = pbVar22 + 1;
  } while (bVar25);
  bVar24 = false;
  bVar25 = (!bVar23 && !bVar25) == bVar23;
  if (bVar25) {
    this->icf_status_ = ICF_NONE;
  }
  else {
    iVar17 = 5;
    pbVar21 = (byte *)0x28e304;
    do {
      if (iVar17 == 0) break;
      iVar17 = iVar17 + -1;
      bVar24 = *pbVar20 < *pbVar21;
      bVar25 = *pbVar20 == *pbVar21;
      pbVar20 = pbVar20 + 1;
      pbVar21 = pbVar21 + 1;
    } while (bVar25);
    this->icf_status_ = ((!bVar24 && !bVar25) == bVar24) + ICF_ALL;
  }
  if ((this->demangle_).user_set_via_option == false) {
    if ((this->no_demangle_).user_set_via_option == false) {
      pcVar15 = getenv("COLLECT_NO_DEMANGLE");
      this->do_demangle_ = pcVar15 == (char *)0x0;
    }
    else {
      this->do_demangle_ = false;
    }
  }
  else {
    pcVar15 = (this->demangle_).value;
    this->do_demangle_ = true;
    if (*pcVar15 != '\0') {
      style = cplus_demangle_name_to_style(pcVar15);
      if (style == unknown_demangling) {
                    /* WARNING: Subroutine does not return */
        gold_fatal("unknown demangling style \'%s\'");
      }
      cplus_demangle_set_style(style);
    }
  }
  local_1f0 = (byte *)0x28e9b2;
  bVar25 = false;
  bVar23 = (this->orphan_handling_).user_set_via_option == false;
  if (!bVar23) {
    pbVar20 = (byte *)(this->orphan_handling_).value;
    iVar17 = 6;
    pbVar21 = pbVar20;
    pbVar22 = (byte *)0x2a3d62;
    do {
      if (iVar17 == 0) break;
      iVar17 = iVar17 + -1;
      bVar25 = *pbVar21 < *pbVar22;
      bVar23 = *pbVar21 == *pbVar22;
      pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;
      pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;
    } while (bVar23);
    bVar24 = false;
    bVar25 = (!bVar25 && !bVar23) == bVar25;
    if (bVar25) {
      this->orphan_handling_enum_ = ORPHAN_PLACE;
    }
    else {
      iVar17 = 8;
      pbVar21 = pbVar20;
      pbVar22 = (byte *)"discard";
      do {
        if (iVar17 == 0) break;
        iVar17 = iVar17 + -1;
        bVar24 = *pbVar21 < *pbVar22;
        bVar25 = *pbVar21 == *pbVar22;
        pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;
        pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;
      } while (bVar25);
      bVar23 = false;
      bVar25 = (!bVar24 && !bVar25) == bVar24;
      if (bVar25) {
        this->orphan_handling_enum_ = ORPHAN_DISCARD;
      }
      else {
        iVar17 = 5;
        pbVar21 = pbVar20;
        pbVar22 = &DAT_00280715;
        do {
          if (iVar17 == 0) break;
          iVar17 = iVar17 + -1;
          bVar23 = *pbVar21 < *pbVar22;
          bVar25 = *pbVar21 == *pbVar22;
          pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;
          pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;
        } while (bVar25);
        bVar24 = false;
        bVar25 = (!bVar23 && !bVar25) == bVar23;
        if (bVar25) {
          this->orphan_handling_enum_ = ORPHAN_WARN;
        }
        else {
          iVar17 = 6;
          pbVar21 = (byte *)0x2a4fde;
          do {
            if (iVar17 == 0) break;
            iVar17 = iVar17 + -1;
            bVar24 = *pbVar20 < *pbVar21;
            bVar25 = *pbVar20 == *pbVar21;
            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;
            pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;
          } while (bVar25);
          if ((!bVar24 && !bVar25) == bVar24) {
            this->orphan_handling_enum_ = ORPHAN_ERROR;
          }
        }
      }
    }
  }
  if (((this->print_map_).value != false) && ((this->Map_).user_set_via_option == false)) {
    (this->Map_).user_set_via_option = true;
    (this->Map_).value = "-";
  }
  if (((this->nmagic_).value != false) || ((this->omagic_).value != false)) {
    this->static_ = true;
  }
  iVar17 = (this->thread_count_).value;
  if (0 < iVar17) {
    if ((this->thread_count_initial_).value == 0) {
      (this->thread_count_initial_).value = iVar17;
    }
    if ((this->thread_count_middle_).value == 0) {
      (this->thread_count_middle_).value = iVar17;
    }
    if ((this->thread_count_final_).value == 0) {
      (this->thread_count_final_).value = iVar17;
    }
  }
  libpath.field_2._M_local_buf[0] = '\0';
  paVar1 = &libpath.field_2;
  libpath._M_string_length = 0;
  libpath._M_dataplus._M_p = (pointer)paVar1;
  if ((this->Y_).user_set_via_option == false) {
    if ((this->nostdlib_).value == false) {
      _in = (undefined **)&local_12c;
                    /* try { // try from 000e81b5 to 000e81b9 has its CatchHandler @ 000e8b37 */
      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::
      _M_construct<char_const*>();
      paVar5 = &local_1a4.name_.field_2;
      local_1a4.name_._M_dataplus._M_p = (pointer)paVar5;
                    /* try { // try from 000e81e2 to 000e81e6 has its CatchHandler @ 000e8ba5 */
      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::
      _M_construct<char*>();
      local_1a4.put_in_sysroot_ = true;
      local_1a4.is_in_sysroot_ = false;
      if (local_1a4.name_._M_string_length == 0) {
                    /* try { // try from 000e8607 to 000e860b has its CatchHandler @ 000e8b3e */
        std::string::_M_replace((string *)&local_1a4,0,0,".",1);
      }
      this_00 = &(this->library_path_).value;
      iVar7._M_current =
           (this->library_path_).value.
           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.
           _M_impl._M_finish;
      if (iVar7._M_current ==
          (this->library_path_).value.
          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.
          _M_impl._M_end_of_storage) {
                    /* try { // try from 000e8623 to 000e8627 has its CatchHandler @ 000e8b45 */
        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::
        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_1a4);
      }
      else {
        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2
        ;
                    /* try { // try from 000e823f to 000e8243 has its CatchHandler @ 000e8b45 */
        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::
        _M_construct<char*>();
        (iVar7._M_current)->put_in_sysroot_ = local_1a4.put_in_sysroot_;
        (iVar7._M_current)->is_in_sysroot_ = local_1a4.is_in_sysroot_;
        ppSVar3 = &(this->library_path_).value.
                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>
                   ._M_impl._M_finish;
        *ppSVar3 = *ppSVar3 + 1;
      }
      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
           *)local_1a4.name_._M_dataplus._M_p != paVar5) {
        operator_delete(local_1a4.name_._M_dataplus._M_p);
      }
      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
           *)_in != &local_12c) {
        operator_delete(_in);
      }
      _in = (undefined **)&local_12c;
                    /* try { // try from 000e82c9 to 000e82cd has its CatchHandler @ 000e8b37 */
      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::
      _M_construct<char_const*>();
      paVar5 = &local_188.name_.field_2;
      local_188.name_._M_dataplus._M_p = (pointer)paVar5;
                    /* try { // try from 000e82f6 to 000e82fa has its CatchHandler @ 000e8b7d */
      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::
      _M_construct<char*>();
      local_188.put_in_sysroot_ = true;
      local_188.is_in_sysroot_ = false;
      if (local_188.name_._M_string_length == 0) {
                    /* try { // try from 000e87a7 to 000e87ab has its CatchHandler @ 000e8b68 */
        std::string::_M_replace((string *)&local_188,0,0,".",1);
      }
      iVar7._M_current =
           (this->library_path_).value.
           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.
           _M_impl._M_finish;
      if (iVar7._M_current ==
          (this->library_path_).value.
          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.
          _M_impl._M_end_of_storage) {
                    /* try { // try from 000e883b to 000e883f has its CatchHandler @ 000e8b6f */
        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::
        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_188);
      }
      else {
        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2
        ;
                    /* try { // try from 000e8345 to 000e8349 has its CatchHandler @ 000e8b6f */
        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::
        _M_construct<char*>();
        (iVar7._M_current)->put_in_sysroot_ = local_188.put_in_sysroot_;
        (iVar7._M_current)->is_in_sysroot_ = local_188.is_in_sysroot_;
        ppSVar3 = &(this->library_path_).value.
                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>
                   ._M_impl._M_finish;
        *ppSVar3 = *ppSVar3 + 1;
      }
      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
           *)local_188.name_._M_dataplus._M_p != paVar5) {
        operator_delete(local_188.name_._M_dataplus._M_p);
      }
      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
           *)_in != &local_12c) {
        operator_delete(_in);
      }
      _in = (undefined **)&local_12c;
                    /* try { // try from 000e83cf to 000e83d3 has its CatchHandler @ 000e8b37 */
      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::
      _M_construct<char_const*>();
      paVar5 = &local_16c.name_.field_2;
      local_16c.name_._M_dataplus._M_p = (pointer)paVar5;
                    /* try { // try from 000e83fc to 000e8400 has its CatchHandler @ 000e8b76 */
      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::
      _M_construct<char*>();
      local_16c.put_in_sysroot_ = true;
      local_16c.is_in_sysroot_ = false;
      if (local_16c.name_._M_string_length == 0) {
                    /* try { // try from 000e87cf to 000e87d3 has its CatchHandler @ 000e8b61 */
        std::string::_M_replace((string *)&local_16c,0,0,".",1);
      }
      iVar7._M_current =
           (this->library_path_).value.
           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.
           _M_impl._M_finish;
      if (iVar7._M_current ==
          (this->library_path_).value.
          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.
          _M_impl._M_end_of_storage) {
                    /* try { // try from 000e881b to 000e881f has its CatchHandler @ 000e8b4c */
        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::
        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_16c);
      }
      else {
        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2
        ;
                    /* try { // try from 000e844b to 000e844f has its CatchHandler @ 000e8b4c */
        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::
        _M_construct<char*>();
        (iVar7._M_current)->put_in_sysroot_ = local_16c.put_in_sysroot_;
        (iVar7._M_current)->is_in_sysroot_ = local_16c.is_in_sysroot_;
        ppSVar3 = &(this->library_path_).value.
                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>
                   ._M_impl._M_finish;
        *ppSVar3 = *ppSVar3 + 1;
      }
      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
           *)local_16c.name_._M_dataplus._M_p != paVar5) {
        operator_delete(local_16c.name_._M_dataplus._M_p);
      }
      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
           *)_in != &local_12c) {
        operator_delete(_in);
      }
      _in = (undefined **)&local_12c;
                    /* try { // try from 000e84d5 to 000e84d9 has its CatchHandler @ 000e8b37 */
      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::
      _M_construct<char_const*>();
      line._M_dataplus._M_p = (pointer)&line.field_2;
                    /* try { // try from 000e850e to 000e8512 has its CatchHandler @ 000e8b1b */
      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::
      _M_construct<char*>();
      if (line._M_string_length == 0) {
                    /* try { // try from 000e87fc to 000e8800 has its CatchHandler @ 000e8b5a */
        std::string::_M_replace((string *)&line,0,0,".",1);
      }
      iVar7._M_current =
           (this->library_path_).value.
           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.
           _M_impl._M_finish;
      if (iVar7._M_current ==
          (this->library_path_).value.
          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.
          _M_impl._M_end_of_storage) {
                    /* try { // try from 000e8860 to 000e8864 has its CatchHandler @ 000e8b14 */
        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::
        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,(Search_directory *)&line);
      }
      else {
        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2
        ;
                    /* try { // try from 000e855d to 000e8561 has its CatchHandler @ 000e8b14 */
        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::
        _M_construct<char*>();
        (iVar7._M_current)->put_in_sysroot_ = true;
        (iVar7._M_current)->is_in_sysroot_ = false;
        ppSVar3 = &(this->library_path_).value.
                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>
                   ._M_impl._M_finish;
        *ppSVar3 = *ppSVar3 + 1;
      }
      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
           *)line._M_dataplus._M_p != &line.field_2) {
        operator_delete(line._M_dataplus._M_p);
      }
      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
           *)_in != &local_12c) {
        operator_delete(_in);
      }
      goto LAB_000e7f08;
    }
  }
  else {
    pcVar15 = (this->Y_).value;
    sVar13 = strlen(pcVar15);
                    /* try { // try from 000e7ede to 000e7f8e has its CatchHandler @ 000e8b37 */
    std::string::_M_replace((string *)&libpath,0,0,pcVar15,sVar13);
    iVar17 = std::string::compare((string *)&libpath,0,2,"P,");
    if (iVar17 == 0) {
      sVar18 = libpath._M_string_length;
      if (2 < libpath._M_string_length) {
        sVar18 = 2;
      }
                    /* try { // try from 000e877d to 000e8781 has its CatchHandler @ 000e8b37 */
      std::string::_M_erase((string *)&libpath,0,sVar18);
    }
LAB_000e7f08:
    uVar19 = 0;
    if (libpath._M_string_length != 0) {
      do {
        uVar14 = std::string::find((string *)&libpath,':',uVar19);
        if ((uVar14 == 0xffffffff) || (uVar14 != uVar19)) {
          if (libpath._M_string_length < uVar19) {
                    /* WARNING: Subroutine does not return */
            std::__throw_out_of_range_fmt("%s: __pos (which is %zu) > this->size() (which is %zu)");
          }
          line._M_dataplus._M_p = (pointer)&line.field_2;
          std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::
          _M_construct<char_const*>();
          _in = (undefined **)&local_12c;
                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */
          std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::
          _M_construct<char*>();
          local_11c._0_1_ = true;
          local_11c._1_1_ = false;
          if (local_130 == 0) {
                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */
            std::string::_M_replace((string *)&in,0,0,".",1);
          }
          iVar7._M_current =
               (this->library_path_).value.
               super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.
               _M_impl._M_finish;
          if (iVar7._M_current ==
              (this->library_path_).value.
              super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.
              _M_impl._M_end_of_storage) {
                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */
            std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::
            _M_realloc_insert<const_gold::Search_directory&>
                      (&(this->library_path_).value,iVar7,(Search_directory *)&in);
          }
          else {
            ((iVar7._M_current)->name_)._M_dataplus._M_p =
                 (pointer)&((iVar7._M_current)->name_).field_2;
                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */
            std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::
            _M_construct<char*>();
            (iVar7._M_current)->put_in_sysroot_ = local_11c._0_1_;
            (iVar7._M_current)->is_in_sysroot_ = local_11c._1_1_;
            ppSVar3 = &(this->library_path_).value.
                       super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>
                       ._M_impl._M_finish;
            *ppSVar3 = *ppSVar3 + 1;
          }
          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
               *)_in != &local_12c) {
            operator_delete(_in);
          }
          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
               *)line._M_dataplus._M_p != &line.field_2) {
            operator_delete(line._M_dataplus._M_p);
          }
          if (uVar14 == 0xffffffff) break;
        }
        uVar19 = uVar14 + 1;
      } while( true );
    }
  }
  if ((this->retain_symbols_file_).value != (char *)0x0) {
    std::ios_base::ios_base((ios_base *)local_a4);
    puVar9 = PTR_DAT_0038c8a0;
    puVar8 = PTR_DAT_0038c89c;
    local_34 = 0;
    local_2c = 0;
    local_a4[0] = &PTR__ios_0038c7b8;
    local_30 = 0;
    local_28 = 0;
    paVar5 = (anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
              *)PTR_DAT_0038c89c;
    local_24 = 0;
    local_20 = 0;
    _in = (undefined **)paVar5;
    *(undefined **)(&in + *(int *)(PTR_DAT_0038c89c + -0xc)) = PTR_DAT_0038c8a0;
                    /* try { // try from 000e77b7 to 000e77bb has its CatchHandler @ 000e8b92 */
    std::ios::init((ios *)((istream *)&in + *(int *)(PTR_DAT_0038c89c + -0xc)),(streambuf *)0x0);
    _in = &PTR__ifstream_0038c8b4;
    local_a4[0] = &PTR__ifstream_0038c8c8;
                    /* try { // try from 000e77e9 to 000e77ed has its CatchHandler @ 000e8b84 */
    std::filebuf::filebuf((filebuf *)local_12c._M_local_buf);
                    /* try { // try from 000e77f7 to 000e77fb has its CatchHandler @ 000e8b29 */
    std::ios::init((ios *)local_a4,(streambuf *)local_12c._M_local_buf);
                    /* try { // try from 000e780b to 000e783a has its CatchHandler @ 000e8b30 */
    iVar17 = std::filebuf::open((filebuf *)local_12c._M_local_buf,(this->retain_symbols_file_).value
                                ,_S_in);
    this_01 = (ios *)((istream *)&in + (int)*(undefined **)((int)_in + -0xc));
    if (iVar17 == 0) {
                    /* try { // try from 000e8751 to 000e8755 has its CatchHandler @ 000e8b30 */
      std::ios::clear(this_01,*(_Ios_Iostate *)
                               (*(undefined **)((int)_in + -0xc) + (int)&local_12c + 0xc) |
                              _S_failbit);
    }
    else {
      std::ios::clear(this_01,_S_goodbit);
    }
    if ((local_90 & 5) != 0) {
      piVar16 = __errno_location();
      strerror(*piVar16);
      pcVar15 = (char *)gettext();
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e8a0c to 000e8a10 has its CatchHandler @ 000e8b30 */
      gold_fatal(pcVar15);
    }
    paVar2 = &line.field_2;
    line.field_2._M_local_buf[0] = '\0';
    line._M_string_length = 0;
    pcVar6 = *(ctype<char> **)((int)auStack_b8 + (int)*(undefined **)((int)_in + -0xc));
    line._M_dataplus._M_p = (pointer)paVar2;
    if (pcVar6 == (ctype<char> *)0x0) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e8af0 to 000e8af4 has its CatchHandler @ 000e8b8b */
      std::__throw_bad_cast();
    }
    if (pcVar6[0x1c] == (ctype<char>)0x0) {
                    /* try { // try from 000e80ec to 000e8113 has its CatchHandler @ 000e8b8b */
      std::ctype<char>::_M_widen_init(pcVar6);
      cVar10 = (ctype<char>)0xa;
      if (*(code **)(*(int *)pcVar6 + 0x18) != std::ctype<char>::do_widen) {
        cVar10 = (ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))();
      }
    }
    else {
      cVar10 = pcVar6[0x27];
    }
                    /* try { // try from 000e78b1 to 000e78f6 has its CatchHandler @ 000e8b8b */
    std::getline<char,std::char_traits<char>,std::allocator<char>>
              ((istream *)&in,(string *)&line,(char)cVar10);
    while ((local_90 & 5) == 0) {
      if ((line._M_string_length != 0) && (line._M_dataplus._M_p[line._M_string_length - 1] == '\r')
         ) {
                    /* try { // try from 000e7e32 to 000e7e36 has its CatchHandler @ 000e8b8b */
        std::string::resize((string *)&line,line._M_string_length - 1,'\0');
      }
      __node = (__node_type *)
               std::_Hash_bytes(line._M_dataplus._M_p,line._M_string_length,0xc70f6907);
      uVar19 = (uint)__node % (this->symbols_to_retain_)._M_h._M_bucket_count;
      p_Var11 = std::
                _Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>
                ::_M_find_before_node
                          (&(this->symbols_to_retain_)._M_h,uVar19,&line,(__hash_code)__node);
      if ((p_Var11 == (__node_base *)0x0) || (p_Var11->_M_nxt == (_Hash_node_base *)0x0)) {
                    /* try { // try from 000e7a7b to 000e7a7f has its CatchHandler @ 000e8b8b */
        __n_elt = (undefined4 *)operator_new(0x20);
        *__n_elt = 0;
        __n_elt[1] = __n_elt + 3;
                    /* try { // try from 000e7aa7 to 000e7aab has its CatchHandler @ 000e8b99 */
        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::
        _M_construct<char*>();
                    /* try { // try from 000e7ac4 to 000e7ac8 has its CatchHandler @ 000e8b8b */
        std::
        _Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>
        ::_M_insert_unique_node
                  ((_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>
                    *)local_1c0,(size_type)&this->symbols_to_retain_,uVar19,__node,
                   (size_type)__n_elt);
      }
      pcVar6 = *(ctype<char> **)((int)auStack_b8 + (int)*(undefined **)((int)_in + -0xc));
      if (pcVar6 == (ctype<char> *)0x0) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e88aa to 000e88ae has its CatchHandler @ 000e8b8b */
        std::__throw_bad_cast();
      }
      if (pcVar6[0x1c] == (ctype<char>)0x0) {
                    /* try { // try from 000e79a3 to 000e79ca has its CatchHandler @ 000e8b8b */
        std::ctype<char>::_M_widen_init(pcVar6);
        cVar10 = (ctype<char>)0xa;
        if (*(code **)(*(int *)pcVar6 + 0x18) != std::ctype<char>::do_widen) {
          cVar10 = (ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))();
        }
      }
      else {
        cVar10 = pcVar6[0x27];
      }
      std::getline<char,std::char_traits<char>,std::allocator<char>>
                ((istream *)&in,(string *)&line,(char)cVar10);
    }
    if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
         *)line._M_dataplus._M_p != paVar2) {
      operator_delete(line._M_dataplus._M_p);
    }
    _in = &PTR__ifstream_0038c8b4;
    local_a4[0] = &PTR__ifstream_0038c8c8;
    local_12c._M_allocated_capacity = (size_type)&PTR__filebuf_0038c838;
    std::filebuf::close((filebuf *)local_12c._M_local_buf);
    std::__basic_file<char>::~__basic_file(local_f4);
    local_12c._M_allocated_capacity = (size_type)&PTR__streambuf_0038c0a4;
    std::locale::~locale(local_110);
    _in = (undefined **)paVar5;
    *(undefined **)(&in + *(int *)(puVar8 + -0xc)) = puVar9;
    local_a4[0] = &PTR__ios_0038c7b8;
    std::ios_base::~ios_base((ios_base *)local_a4);
  }
  if (((this->Bgroup_).value != false) && ((this->unresolved_symbols_).user_set_via_option == false)
     ) {
    (this->unresolved_symbols_).value = "report-all";
  }
  if (((this->shared_).value != false) &&
     ((this->allow_shlib_undefined_).user_set_via_option == false)) {
    (this->allow_shlib_undefined_).value = true;
  }
                    /* try { // try from 000e7bea to 000e7e1a has its CatchHandler @ 000e8b37 */
  add_sysroot(this);
  if ((this->shared_).value == false) {
    if ((this->pie_).value != false) {
      if (this->static_ != false) {
        pcVar15 = (char *)gettext();
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e8b0f to 000e8b13 has its CatchHandler @ 000e8b37 */
        gold_fatal(pcVar15);
      }
      if ((this->relocatable_).value != false) {
        pcVar15 = (char *)gettext();
                    /* WARNING: Subroutine does not return */
        gold_fatal(pcVar15);
      }
    }
    if ((this->filter_).value != (char *)0x0) {
      pcVar15 = (char *)gettext();
                    /* WARNING: Subroutine does not return */
      gold_fatal(pcVar15);
    }
    if ((this->auxiliary_).value._M_h._M_element_count != 0) {
      pcVar15 = (char *)gettext();
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e89c3 to 000e89c7 has its CatchHandler @ 000e8b37 */
      gold_fatal(pcVar15);
    }
    if (((this->relocatable_).value != false) && ((this->retain_symbols_file_).value != (char *)0x0)
       ) {
      pcVar15 = (char *)gettext();
                    /* WARNING: Subroutine does not return */
      gold_fatal(pcVar15);
    }
  }
  else {
    if (this->static_ != false) {
      pcVar15 = (char *)gettext();
                    /* WARNING: Subroutine does not return */
      gold_fatal(pcVar15);
    }
    if ((this->pie_).value != false) {
      pcVar15 = (char *)gettext();
                    /* WARNING: Subroutine does not return */
      gold_fatal(pcVar15);
    }
    if ((this->relocatable_).value != false) {
      pcVar15 = (char *)gettext();
                    /* WARNING: Subroutine does not return */
      gold_fatal(pcVar15);
    }
  }
  OVar12 = string_to_object_format((this->oformat_).value);
  if ((OVar12 != OBJECT_FORMAT_ELF) &&
     ((((this->shared_).value != false || ((this->pie_).value != false)) ||
      ((this->relocatable_).value != false)))) {
    pcVar15 = (char *)gettext();
                    /* WARNING: Subroutine does not return */
    gold_fatal(pcVar15);
  }
  if (((this->hash_bucket_empty_fraction_).user_set_via_option != false) &&
     ((dVar4 = (this->hash_bucket_empty_fraction_).value, dVar4 < 0.0 || (1.0 <= dVar4)))) {
    pcVar15 = (char *)gettext();
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e88d9 to 000e8993 has its CatchHandler @ 000e8b37 */
    gold_fatal(pcVar15);
  }
  if (this->implicit_incremental_ == false) {
    if (this->incremental_mode_ == INCREMENTAL_OFF) goto LAB_000e7d53;
  }
  else if (this->incremental_mode_ == INCREMENTAL_OFF) {
    pcVar15 = (char *)gettext();
                    /* WARNING: Subroutine does not return */
    gold_fatal(pcVar15);
  }
  if ((this->relocatable_).value != false) {
    pcVar15 = (char *)gettext();
                    /* WARNING: Subroutine does not return */
    gold_fatal(pcVar15);
  }
  if ((this->emit_relocs_).value != false) {
    pcVar15 = (char *)gettext();
                    /* WARNING: Subroutine does not return */
    gold_fatal(pcVar15);
  }
  if (this->plugins_ != (Plugin_manager *)0x0) {
    pcVar15 = (char *)gettext();
                    /* WARNING: Subroutine does not return */
    gold_fatal(pcVar15);
  }
  if ((this->relro_).value != false) {
    pcVar15 = (char *)gettext();
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e8a2b to 000e8ae9 has its CatchHandler @ 000e8b37 */
    gold_fatal(pcVar15);
  }
  if ((this->pie_).value != false) {
    pcVar15 = (char *)gettext();
                    /* WARNING: Subroutine does not return */
    gold_fatal(pcVar15);
  }
  if ((this->gc_sections_).value != false) {
    pcVar15 = (char *)gettext();
    gold_warning(pcVar15);
    (this->gc_sections_).value = false;
  }
  bVar23 = this->icf_status_ == ICF_NONE;
  bVar25 = !bVar23;
  if (bVar25) {
    pcVar15 = (char *)gettext();
    gold_warning(pcVar15);
    this->icf_status_ = ICF_NONE;
  }
  bVar25 = bVar25 && (undefined1 *)0xffffffef < &stack0xfffffde4;
  bVar23 = bVar23 || &stack0x00000000 == (undefined1 *)0x20c;
  iVar17 = 5;
  pbVar20 = (byte *)(this->compress_debug_sections_).value;
  do {
    if (iVar17 == 0) break;
    iVar17 = iVar17 + -1;
    bVar25 = *pbVar20 < *local_1f0;
    bVar23 = *pbVar20 == *local_1f0;
    pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;
    local_1f0 = local_1f0 + (uint)bVar26 * -2 + 1;
  } while (bVar23);
  if ((!bVar25 && !bVar23) != bVar25) {
    pcVar15 = (char *)gettext();
                    /* try { // try from 000e86b2 to 000e8726 has its CatchHandler @ 000e8b37 */
    gold_warning(pcVar15);
    (this->compress_debug_sections_).value = "none";
  }
LAB_000e7d53:
  if ((this->rosegment_gap_).user_set_via_option != false) {
    (this->rosegment_).value = true;
  }
  if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
       *)libpath._M_dataplus._M_p != paVar1) {
    operator_delete(libpath._M_dataplus._M_p);
  }
  return;
}



/* WARNING: Function: __i686.get_pc_thunk.ax replaced with injection: get_pc_thunk_ax */

void FUN_000e74a0(int param_1)

{
  double dVar1;
  undefined **ppuVar2;
  undefined1 **ppuVar3;
  undefined **ppuVar4;
  char cVar5;
  uint uVar6;
  int *piVar7;
  undefined4 *puVar8;
  size_t sVar9;
  uint uVar10;
  undefined4 uVar11;
  char *pcVar12;
  undefined4 uVar13;
  int iVar14;
  undefined *puVar15;
  uint uVar16;
  undefined1 *puVar17;
  undefined1 *puVar18;
  byte *pbVar19;
  byte *pbVar20;
  byte *pbVar21;
  bool bVar22;
  bool bVar23;
  bool bVar24;
  byte bVar25;
  undefined4 uStackY_230;
  undefined1 auStack_20c [12];
  undefined **local_200;
  undefined **local_1fc;
  undefined *local_1f8;
  undefined ***local_1f4;
  byte *local_1f0;
  undefined1 *local_1ec;
  undefined ***local_1e8;
  undefined1 *local_1e4;
  undefined1 *local_1e0;
  undefined ***local_1dc;
  uint local_1d8;
  undefined1 **local_1d4;
  undefined ***local_1d0;
  double local_1cc;
  undefined **local_1c4;
  undefined1 local_1c0 [4];
  undefined1 *local_1bc;
  uint local_1b8;
  undefined1 local_1b4 [16];
  undefined1 *local_1a4;
  int local_1a0;
  undefined1 local_19c [16];
  undefined2 local_18c;
  undefined1 *local_188;
  int local_184;
  undefined1 local_180 [16];
  undefined2 local_170;
  undefined1 *local_16c;
  int local_168;
  undefined1 local_164 [16];
  undefined2 local_154;
  undefined1 *local_150;
  int local_14c;
  undefined1 local_148 [16];
  undefined2 local_138;
  undefined ***local_134;
  int local_130;
  undefined **local_12c [4];
  undefined2 local_11c;
  undefined1 local_110 [28];
  undefined1 local_f4 [60];
  int aiStack_b8 [5];
  undefined **local_a4 [5];
  byte local_90;
  undefined4 local_34;
  undefined2 local_30;
  undefined4 local_2c;
  undefined4 local_28;
  undefined4 local_24;
  undefined4 local_20;
  
  bVar25 = 0;
  local_1c4 = &__DT_PLTGOT;
  if (*(char *)(param_1 + 0x3469) == '\0') {
    if (*(char *)(param_1 + 0x34e5) != '\0') goto LAB_000e79ea;
    if (*(char *)(param_1 + 0x3561) != '\0') {
      bVar24 = false;
      goto LAB_000e79f9;
    }
    bVar24 = false;
    if (*(char *)(param_1 + 0x7a9) != '\0') goto LAB_000e7a0c;
  }
  else {
    *(undefined1 *)(param_1 + 0x34e5) = 1;
LAB_000e79ea:
    bVar24 = true;
    *(undefined1 *)(param_1 + 0x3561) = 1;
LAB_000e79f9:
    *(undefined1 *)(param_1 + 0x35dd) = 1;
    if (*(char *)(param_1 + 0x7a9) != '\0') {
LAB_000e7a0c:
      *(undefined1 *)(param_1 + 0x1a25) = 1;
    }
    if (((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&
       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)) {
      local_1c4 = &__DT_PLTGOT;
                    /* WARNING: Subroutine does not return */
      FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);
    }
  }
  if (*(char *)(param_1 + 0xbcd) != '\0') {
    *(undefined1 *)(param_1 + 0xb51) = 1;
  }
  if (*(char *)(param_1 + 0xc49) != '\0') {
    *(undefined1 *)(param_1 + 0xb51) = 1;
  }
  if (*(char *)(param_1 + 0xb50) == '\0') {
    local_1cc = (double)CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d));
    *(byte *)(param_1 + 0xb51) = *(byte *)(param_1 + 0x318d) ^ 1;
  }
  bVar24 = *(char *)(param_1 + 0x4f31) == '\0';
  if (bVar24) {
    bVar24 = *(char *)(param_1 + 0x5545) == '\0';
    if (!bVar24) {
      *(undefined4 *)(param_1 + 0x5930) = 2;
    }
  }
  else {
    *(undefined4 *)(param_1 + 0x5930) = 1;
  }
  bVar22 = false;
  iVar14 = 5;
  local_1f0 = (byte *)0x28e9b2;
  pbVar19 = *(byte **)(param_1 + 0x1bec);
  pbVar20 = local_1f0;
  do {
    pbVar21 = pbVar20;
    if (iVar14 == 0) break;
    iVar14 = iVar14 + -1;
    pbVar21 = pbVar20 + 1;
    bVar22 = *pbVar19 < *pbVar20;
    bVar24 = *pbVar19 == *pbVar20;
    pbVar19 = pbVar19 + 1;
    pbVar20 = pbVar21;
  } while (bVar24);
  bVar23 = false;
  bVar24 = (!bVar22 && !bVar24) == bVar22;
  if (bVar24) {
    *(undefined4 *)(param_1 + 0x5934) = 0;
  }
  else {
    iVar14 = 5;
    pbVar19 = *(byte **)(param_1 + 0x1bec);
    pbVar20 = (byte *)0x28e304;
    do {
      pbVar21 = pbVar20;
      if (iVar14 == 0) break;
      iVar14 = iVar14 + -1;
      pbVar21 = pbVar20 + 1;
      bVar23 = *pbVar19 < *pbVar20;
      bVar24 = *pbVar19 == *pbVar20;
      pbVar19 = pbVar19 + 1;
      pbVar20 = pbVar21;
    } while (bVar24);
    *(uint *)(param_1 + 0x5934) = ((!bVar23 && !bVar24) == bVar23) + 1;
  }
  if (*(char *)(param_1 + 0xd4c) == '\0') {
    if (*(char *)(param_1 + 0xd90) == '\0') {
      local_1c4 = &__DT_PLTGOT;
      pcVar12 = getenv("COLLECT_NO_DEMANGLE");
      *(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0;
    }
    else {
      *(undefined1 *)(param_1 + 0x5939) = 0;
    }
  }
  else {
    pcVar12 = *(char **)(param_1 + 0xd50);
    *(undefined1 *)(param_1 + 0x5939) = 1;
    local_1c4 = &__DT_PLTGOT;
    if (*pcVar12 != '\0') {
      iVar14 = FUN_001ce8a0(pcVar12);
      if (iVar14 == 0) {
                    /* WARNING: Subroutine does not return */
        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);
      }
      FUN_001ce850(iVar14);
    }
  }
  ppuVar4 = local_1c4;
  bVar24 = false;
  bVar22 = *(char *)(param_1 + 0x2870) == '\0';
  if (!bVar22) {
    pbVar19 = *(byte **)(param_1 + 0x2874);
    iVar14 = 6;
    pbVar20 = pbVar19;
    pbVar21 = (byte *)((int)local_1c4 + -0xeb29e);
    do {
      if (iVar14 == 0) break;
      iVar14 = iVar14 + -1;
      bVar24 = *pbVar20 < *pbVar21;
      bVar22 = *pbVar20 == *pbVar21;
      pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;
      pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;
    } while (bVar22);
    bVar23 = false;
    bVar24 = (!bVar24 && !bVar22) == bVar24;
    if (bVar24) {
      *(undefined4 *)(param_1 + 0x5a88) = 0;
    }
    else {
      iVar14 = 8;
      pbVar20 = pbVar19;
      pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);
      do {
        if (iVar14 == 0) break;
        iVar14 = iVar14 + -1;
        bVar23 = *pbVar20 < *pbVar21;
        bVar24 = *pbVar20 == *pbVar21;
        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;
        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;
      } while (bVar24);
      bVar22 = false;
      bVar24 = (!bVar23 && !bVar24) == bVar23;
      if (bVar24) {
        *(undefined4 *)(param_1 + 0x5a88) = 1;
      }
      else {
        iVar14 = 5;
        pbVar20 = pbVar19;
        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);
        do {
          if (iVar14 == 0) break;
          iVar14 = iVar14 + -1;
          bVar22 = *pbVar20 < *pbVar21;
          bVar24 = *pbVar20 == *pbVar21;
          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;
          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;
        } while (bVar24);
        bVar23 = false;
        bVar24 = (!bVar22 && !bVar24) == bVar22;
        if (bVar24) {
          *(undefined4 *)(param_1 + 0x5a88) = 2;
        }
        else {
          iVar14 = 6;
          pbVar20 = (byte *)((int)local_1c4 + -0xea022);
          do {
            if (iVar14 == 0) break;
            iVar14 = iVar14 + -1;
            bVar23 = *pbVar19 < *pbVar20;
            bVar24 = *pbVar19 == *pbVar20;
            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;
            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;
          } while (bVar24);
          if ((!bVar23 && !bVar24) == bVar23) {
            *(undefined4 *)(param_1 + 0x5a88) = 3;
          }
        }
      }
    }
  }
  if ((*(char *)(param_1 + 0x2401) != '\0') && (*(char *)(param_1 + 0x247c) == '\0')) {
    *(undefined1 *)(param_1 + 0x247c) = 1;
    *(undefined ***)(param_1 + 0x2480) = local_1c4 + -0x4062a;
  }
  if ((*(char *)(param_1 + 0x24c1) != '\0') || (*(char *)(param_1 + 0x253d) != '\0')) {
    *(undefined1 *)(param_1 + 0x5938) = 1;
  }
  iVar14 = *(int *)(param_1 + 0x3de8);
  if (0 < iVar14) {
    if (*(int *)(param_1 + 0x3e2c) == 0) {
      *(int *)(param_1 + 0x3e2c) = iVar14;
    }
    if (*(int *)(param_1 + 0x3e70) == 0) {
      *(int *)(param_1 + 0x3e70) = iVar14;
    }
    if (*(int *)(param_1 + 0x3eb4) == 0) {
      *(int *)(param_1 + 0x3eb4) = iVar14;
    }
  }
  local_1d4 = &local_1bc;
  local_1b4[0] = 0;
  local_1ec = local_1b4;
  local_1b8 = 0;
  local_1bc = local_1ec;
  if (*(char *)(param_1 + 0x4ca8) == '\0') {
    if (*(char *)(param_1 + 0x2729) == '\0') {
      local_1dc = local_12c;
      local_1d0 = (undefined ***)&local_134;
      local_134 = local_1dc;
                    /* try { // try from 000e81b5 to 000e81b9 has its CatchHandler @ 000e8b37 */
      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0);
      local_1a4 = local_19c;
                    /* try { // try from 000e81e2 to 000e81e6 has its CatchHandler @ 000e8ba5 */
      FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0);
      local_18c = 1;
      if (local_1a0 == 0) {
                    /* try { // try from 000e8607 to 000e860b has its CatchHandler @ 000e8b3e */
        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);
      }
      local_1d8 = param_1 + 0x2184;
      piVar7 = *(int **)(param_1 + 0x2188);
      if (piVar7 == *(int **)(param_1 + 0x218c)) {
                    /* try { // try from 000e8623 to 000e8627 has its CatchHandler @ 000e8b45 */
        FUN_000eae90(local_1d8,piVar7,&local_1a4);
      }
      else {
        *piVar7 = (int)(piVar7 + 2);
                    /* try { // try from 000e823f to 000e8243 has its CatchHandler @ 000e8b45 */
        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);
        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;
        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;
        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;
      }
      if (local_1a4 != local_19c) {
        FUN_001e6db0(local_1a4);
      }
      if (local_134 != local_1dc) {
        FUN_001e6db0(local_134);
      }
      local_134 = local_1dc;
                    /* try { // try from 000e82c9 to 000e82cd has its CatchHandler @ 000e8b37 */
      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0);
      local_188 = local_180;
                    /* try { // try from 000e82f6 to 000e82fa has its CatchHandler @ 000e8b7d */
      FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0);
      local_170 = 1;
      if (local_184 == 0) {
                    /* try { // try from 000e87a7 to 000e87ab has its CatchHandler @ 000e8b68 */
        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);
      }
      piVar7 = *(int **)(param_1 + 0x2188);
      if (piVar7 == *(int **)(param_1 + 0x218c)) {
                    /* try { // try from 000e883b to 000e883f has its CatchHandler @ 000e8b6f */
        FUN_000eae90(local_1d8,piVar7,&local_188);
      }
      else {
        *piVar7 = (int)(piVar7 + 2);
                    /* try { // try from 000e8345 to 000e8349 has its CatchHandler @ 000e8b6f */
        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);
        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;
        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;
        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;
      }
      if (local_188 != local_180) {
        FUN_001e6db0(local_188);
      }
      if (local_134 != local_1dc) {
        FUN_001e6db0(local_134);
      }
      local_134 = local_1dc;
                    /* try { // try from 000e83cf to 000e83d3 has its CatchHandler @ 000e8b37 */
      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0);
      local_16c = local_164;
                    /* try { // try from 000e83fc to 000e8400 has its CatchHandler @ 000e8b76 */
      FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0);
      local_154 = 1;
      if (local_168 == 0) {
                    /* try { // try from 000e87cf to 000e87d3 has its CatchHandler @ 000e8b61 */
        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);
      }
      piVar7 = *(int **)(param_1 + 0x2188);
      if (piVar7 == *(int **)(param_1 + 0x218c)) {
                    /* try { // try from 000e881b to 000e881f has its CatchHandler @ 000e8b4c */
        FUN_000eae90(local_1d8,piVar7,&local_16c);
      }
      else {
        *piVar7 = (int)(piVar7 + 2);
                    /* try { // try from 000e844b to 000e844f has its CatchHandler @ 000e8b4c */
        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);
        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;
        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;
        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;
      }
      if (local_16c != local_164) {
        FUN_001e6db0(local_16c);
      }
      if (local_134 != local_1dc) {
        FUN_001e6db0(local_134);
      }
      local_134 = local_1dc;
                    /* try { // try from 000e84d5 to 000e84d9 has its CatchHandler @ 000e8b37 */
      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0);
      local_1e0 = local_148;
      local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);
      local_150 = local_1e0;
                    /* try { // try from 000e850e to 000e8512 has its CatchHandler @ 000e8b1b */
      FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0);
      local_138 = 1;
      if (local_14c == 0) {
                    /* try { // try from 000e87fc to 000e8800 has its CatchHandler @ 000e8b5a */
        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);
      }
      piVar7 = *(int **)(param_1 + 0x2188);
      if (piVar7 == *(int **)(param_1 + 0x218c)) {
                    /* try { // try from 000e8860 to 000e8864 has its CatchHandler @ 000e8b14 */
        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);
      }
      else {
        *piVar7 = (int)(piVar7 + 2);
                    /* try { // try from 000e855d to 000e8561 has its CatchHandler @ 000e8b14 */
        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);
        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;
        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;
        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;
      }
      if (local_150 != local_1e0) {
        FUN_001e6db0(local_150);
      }
      if (local_134 != local_1dc) {
        FUN_001e6db0(local_134);
      }
      goto LAB_000e7f08;
    }
  }
  else {
    pcVar12 = *(char **)(param_1 + 0x4cac);
    sVar9 = strlen(pcVar12);
    ppuVar3 = local_1d4;
                    /* try { // try from 000e7ede to 000e7f8e has its CatchHandler @ 000e8b37 */
    FUN_001ef9f0(local_1d4,0,0,pcVar12,sVar9);
    iVar14 = FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6);
    if (iVar14 == 0) {
      uVar6 = local_1b8;
      if (2 < local_1b8) {
        uVar6 = 2;
      }
                    /* try { // try from 000e877d to 000e8781 has its CatchHandler @ 000e8b37 */
      FUN_001eebf0(local_1d4,0,uVar6);
    }
LAB_000e7f08:
    uVar6 = 0;
    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);
    if (local_1b8 != 0) {
      do {
        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);
        uVar16 = 0xffffffff;
        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {
          if (local_1b8 < uVar6) {
                    /* WARNING: Subroutine does not return */
            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);
          }
          local_1e0 = local_148;
          uVar10 = local_1b8 - uVar6;
          if (uVar16 < local_1b8 - uVar6) {
            uVar10 = uVar16;
          }
          local_150 = local_1e0;
          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);
          local_1dc = local_12c;
          local_1d0 = (undefined ***)&local_134;
          local_134 = local_1dc;
                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */
          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);
          local_11c = 1;
          if (local_130 == 0) {
                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */
            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);
          }
          piVar7 = *(int **)(param_1 + 0x2188);
          if (piVar7 == *(int **)(param_1 + 0x218c)) {
                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */
            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);
          }
          else {
            *piVar7 = (int)(piVar7 + 2);
                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */
            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);
            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;
            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;
            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;
          }
          if (local_134 != local_1dc) {
            FUN_001e6db0(local_134);
          }
          if (local_150 != local_1e0) {
            FUN_001e6db0(local_150);
          }
          if (iVar14 == -1) break;
        }
        uVar6 = iVar14 + 1;
      } while( true );
    }
  }
  ppuVar4 = local_1c4;
  puVar17 = auStack_20c;
  puVar18 = auStack_20c;
  if (*(int *)(param_1 + 0x3288) != 0) {
    local_1e8 = local_a4;
    local_1d0 = (undefined ***)&local_134;
    FUN_0022bca0(local_1e8);
    local_1fc = ppuVar4 + -0xa14;
    local_34 = 0;
    local_2c = 0;
    local_a4[0] = ppuVar4 + -0xa12;
    local_30 = 0;
    local_28 = 0;
    local_1f4 = (undefined ***)ppuVar4[-0x9d9];
    local_1f8 = ppuVar4[-0x9d8];
    local_24 = 0;
    local_20 = 0;
    local_134 = local_1f4;
    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;
    local_130 = 0;
                    /* try { // try from 000e77b7 to 000e77bb has its CatchHandler @ 000e8b92 */
    FUN_00211450((int)local_1f4[-3] + (int)&local_134,0);
    local_200 = ppuVar4 + -0x9d6;
    local_134 = (undefined ***)(ppuVar4 + -0x9d3);
    local_a4[0] = ppuVar4 + -0x9ce;
    local_1dc = local_12c;
                    /* try { // try from 000e77e9 to 000e77ed has its CatchHandler @ 000e8b84 */
    FUN_00213670(local_12c);
                    /* try { // try from 000e77f7 to 000e77fb has its CatchHandler @ 000e8b29 */
    FUN_00211450(local_1e8,local_12c);
                    /* try { // try from 000e780b to 000e783a has its CatchHandler @ 000e8b30 */
    iVar14 = FUN_00217950(local_12c,*(undefined4 *)(param_1 + 0x3288),8);
    puVar15 = (undefined *)((int)local_1d0 + (int)local_134[-3]);
    if (iVar14 == 0) {
                    /* try { // try from 000e8751 to 000e8755 has its CatchHandler @ 000e8b30 */
      FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4);
    }
    else {
      FUN_00210c00(puVar15,0);
    }
    ppuVar4 = local_1c4;
    if ((local_90 & 5) != 0) {
      piVar7 = __errno_location();
      pcVar12 = strerror(*piVar7);
      uVar11 = *(undefined4 *)(param_1 + 0x3288);
      uVar13 = gettext(local_1c4 + -0x3f6cb);
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e8a0c to 000e8a10 has its CatchHandler @ 000e8b30 */
      FUN_00065450(uVar13,uVar11,pcVar12);
    }
    local_1e0 = local_148;
    local_148[0] = 0;
    local_14c = 0;
    piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);
    local_150 = local_1e0;
    if (piVar7 == (int *)0x0) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e8af0 to 000e8af4 has its CatchHandler @ 000e8b8b */
      FUN_0022c630();
    }
    if ((char)piVar7[7] == '\0') {
                    /* try { // try from 000e80ec to 000e8113 has its CatchHandler @ 000e8b8b */
      FUN_0022ccc0(piVar7);
      iVar14 = 10;
      if (*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0) {
        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);
        iVar14 = (int)cVar5;
      }
    }
    else {
      iVar14 = (int)*(char *)((int)piVar7 + 0x27);
    }
    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);
                    /* try { // try from 000e78b1 to 000e78f6 has its CatchHandler @ 000e8b8b */
    FUN_001e7cb0(local_1d0,&local_150,iVar14);
    local_1d4 = (undefined1 **)(param_1 + 0x5a3c);
    local_1e4 = local_1c0;
    while ((local_90 & 5) == 0) {
      if ((local_14c != 0) && (local_150[local_14c + -1] == '\r')) {
        *(undefined4 *)(puVar17 + -8) = 0;
        *(int *)(puVar17 + -0xc) = local_14c + -1;
        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;
                    /* try { // try from 000e7e32 to 000e7e36 has its CatchHandler @ 000e8b8b */
        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;
        FUN_001ef780();
      }
      *(undefined4 *)(puVar17 + -8) = 0xc70f6907;
      *(int *)(puVar17 + -0xc) = local_14c;
      *(undefined1 **)(puVar17 + -0x10) = local_150;
      *(undefined4 *)(puVar17 + -0x14) = 0xe793a;
      uVar6 = FUN_001e52b0();
      local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40);
      *(uint *)(puVar17 + -0x14) = uVar6;
      *(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_;
      *(uint *)(puVar17 + -0x1c) = local_1d8;
      *(undefined1 ***)(puVar17 + -0x20) = local_1d4;
      *(undefined4 *)(puVar17 + -0x24) = 0xe7960;
      piVar7 = (int *)FUN_000eadf0();
      if ((piVar7 == (int *)0x0) || (*piVar7 == 0)) {
        *(undefined4 *)(puVar17 + -0x10) = 0x20;
                    /* try { // try from 000e7a7b to 000e7a7f has its CatchHandler @ 000e8b8b */
        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;
        puVar8 = (undefined4 *)FUN_001e5200();
        *puVar8 = 0;
        puVar8[1] = puVar8 + 3;
        *(undefined4 *)(puVar17 + -4) = 0;
        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;
        *(undefined1 **)(puVar17 + -0xc) = local_150;
        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;
                    /* try { // try from 000e7aa7 to 000e7aab has its CatchHandler @ 000e8b99 */
        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;
        FUN_000513a0();
        *(undefined4 *)(puVar17 + -0xc) = 1;
        *(undefined4 **)(puVar17 + -0x10) = puVar8;
        *(uint *)(puVar17 + -0x14) = uVar6;
        *(uint *)(puVar17 + -0x18) = local_1d8;
        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;
        *(undefined1 **)(puVar17 + -0x20) = local_1e4;
                    /* try { // try from 000e7ac4 to 000e7ac8 has its CatchHandler @ 000e8b8b */
        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;
        FUN_000ec3b0();
        puVar17 = puVar17 + -4;
      }
      ppuVar4 = local_1c4;
      piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);
      if (piVar7 == (int *)0x0) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e88aa to 000e88ae has its CatchHandler @ 000e8b8b */
        *(undefined4 *)(puVar17 + -4) = 0xe88af;
        FUN_0022c630();
      }
      if ((char)piVar7[7] == '\0') {
        *(int **)(puVar17 + -0x10) = piVar7;
                    /* try { // try from 000e79a3 to 000e79ca has its CatchHandler @ 000e8b8b */
        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;
        FUN_0022ccc0();
        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);
        iVar14 = 10;
        if (ppuVar2 != ppuVar4 + -0xba9e0) {
          *(undefined4 *)(puVar17 + -0xc) = 10;
          *(int **)(puVar17 + -0x10) = piVar7;
          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;
          cVar5 = (*(code *)ppuVar2)();
          iVar14 = (int)cVar5;
        }
      }
      else {
        iVar14 = (int)*(char *)((int)piVar7 + 0x27);
      }
      *(int *)(puVar17 + -8) = iVar14;
      *(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_;
      *(undefined ****)(puVar17 + -0x10) = local_1d0;
      *(undefined4 *)(puVar17 + -0x14) = 0xe78f7;
      FUN_001e7cb0();
    }
    if (local_150 != local_1e0) {
      *(undefined1 **)(puVar17 + -0x10) = local_150;
      *(undefined4 *)(puVar17 + -0x14) = 0xe7aef;
      FUN_001e6db0();
    }
    ppuVar4 = local_1c4;
    *(undefined ****)(puVar17 + -0x10) = local_1dc;
    local_134 = (undefined ***)(local_200 + 3);
    local_a4[0] = local_200 + 8;
    local_12c[0] = local_1c4 + -0x9f2;
    *(undefined4 *)(puVar17 + -0x14) = 0xe7b2f;
    FUN_00216e90();
    *(undefined1 **)(puVar17 + -0x10) = local_f4;
    *(undefined4 *)(puVar17 + -0x14) = 0xe7b3d;
    FUN_001e75f0();
    local_12c[0] = ppuVar4 + -0xbd7;
    *(undefined1 **)(puVar17 + -0x10) = local_110;
    *(undefined4 *)(puVar17 + -0x14) = 0xe7b5a;
    FUN_001e9510();
    local_134 = local_1f4;
    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;
    local_130 = 0;
    local_a4[0] = local_1fc + 2;
    *(undefined ****)(puVar17 + -0x10) = local_1e8;
    *(undefined4 *)(puVar17 + -0x14) = 0xe7b9b;
    FUN_0022c040();
    puVar18 = puVar17;
  }
  if ((*(char *)(param_1 + 0x72d) != '\0') && (*(char *)(param_1 + 0x42e0) == '\0')) {
    *(int *)(param_1 + 0x42e4) = (int)local_1c4 + -0x10e8db;
  }
  if ((*(char *)(param_1 + 0x1a25) != '\0') && (*(char *)(param_1 + 0x1fc) == '\0')) {
    *(undefined1 *)(param_1 + 0x1fd) = 1;
  }
  *(int *)(puVar18 + -0x10) = param_1;
                    /* try { // try from 000e7bea to 000e7e1a has its CatchHandler @ 000e8b37 */
  *(undefined4 *)(puVar18 + -0x14) = 0xe7bef;
  FUN_000ddde0();
  if (*(char *)(param_1 + 0x1a25) == '\0') {
    if (*(char *)(param_1 + 0x2931) != '\0') {
      if (*(char *)(param_1 + 0x5938) != '\0') {
        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;
        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;
        uVar11 = gettext();
        *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e8b0f to 000e8b13 has its CatchHandler @ 000e8b37 */
        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;
        FUN_00065450();
      }
      if (*(char *)(param_1 + 0x318d) != '\0') {
        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;
        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;
        uVar11 = gettext();
        *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;
        FUN_00065450();
      }
    }
    if (*(int *)(param_1 + 0x1478) != 0) {
      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b;
      *(undefined4 *)(puVar18 + -0x14) = 0xe898c;
      uVar11 = gettext();
      *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
      *(undefined4 *)(puVar18 + -0x14) = 0xe8994;
      FUN_00065450();
    }
    if (*(int *)(param_1 + 0x1428) != 0) {
      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690;
      *(undefined4 *)(puVar18 + -0x14) = 0xe89c0;
      uVar11 = gettext();
      *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e89c3 to 000e89c7 has its CatchHandler @ 000e8b37 */
      *(undefined4 *)(puVar18 + -0x14) = 0xe89c8;
      FUN_00065450();
    }
    if ((*(char *)(param_1 + 0x318d) != '\0') && (*(int *)(param_1 + 0x3288) != 0)) {
      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684;
      *(undefined4 *)(puVar18 + -0x14) = 0xe7e13;
      uVar11 = gettext();
      *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
      *(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b;
      FUN_00065450();
    }
  }
  else {
    if (*(char *)(param_1 + 0x5938) != '\0') {
      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;
      *(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;
      uVar11 = gettext();
      *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
      *(undefined4 *)(puVar18 + -0x14) = 0xe8aea;
      FUN_00065450();
    }
    if (*(char *)(param_1 + 0x2931) != '\0') {
      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;
      *(undefined4 *)(puVar18 + -0x14) = 0xe892f;
      uVar11 = gettext();
      *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
      *(undefined4 *)(puVar18 + -0x14) = 0xe8937;
      FUN_00065450();
    }
    if (*(char *)(param_1 + 0x318d) != '\0') {
      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;
      *(undefined4 *)(puVar18 + -0x14) = 0xe894e;
      uVar11 = gettext();
      *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
      *(undefined4 *)(puVar18 + -0x14) = 0xe8956;
      FUN_00065450();
    }
  }
  *(undefined4 *)(puVar18 + -0x10) = *(undefined4 *)(param_1 + 0x27ec);
  *(undefined4 *)(puVar18 + -0x14) = 0xe7c40;
  iVar14 = FUN_000dd760();
  if ((iVar14 != 0) &&
     (((*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||
      (*(char *)(param_1 + 0x318d) != '\0')))) {
    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f678;
    *(undefined4 *)(puVar18 + -0x14) = 0xe8910;
    uVar11 = gettext();
    *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
    *(undefined4 *)(puVar18 + -0x14) = 0xe8918;
    FUN_00065450();
  }
  if ((*(char *)(param_1 + 0x1ae4) != '\0') &&
     ((dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1)))) {
    local_1cc = dVar1;
    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f668;
    *(undefined4 *)(puVar18 + -0x14) = 0xe88cc;
    uVar11 = gettext();
    dVar1 = local_1cc;
    *(undefined4 *)(puVar18 + -0x10) = uVar11;
    *(double *)(puVar18 + -0xc) = dVar1;
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e88d9 to 000e8993 has its CatchHandler @ 000e8b37 */
    *(undefined4 *)(puVar18 + -0x14) = 0xe88de;
    FUN_00065450();
  }
  if (*(char *)(param_1 + 0x5a1c) == '\0') {
    if (*(int *)(param_1 + 0x5a10) == 0) goto LAB_000e7d53;
  }
  else if (*(int *)(param_1 + 0x5a10) == 0) {
    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658;
    *(undefined4 *)(puVar18 + -0x14) = 0xe8a66;
    uVar11 = gettext();
    *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
    *(undefined4 *)(puVar18 + -0x14) = 0xe8a6e;
    FUN_00065450();
  }
  if (*(char *)(param_1 + 0x318d) != '\0') {
    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f63c;
    *(undefined4 *)(puVar18 + -0x14) = 0xe8a85;
    uVar11 = gettext();
    *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
    *(undefined4 *)(puVar18 + -0x14) = 0xe8a8d;
    FUN_00065450();
  }
  if (*(char *)(param_1 + 0x3095) != '\0') {
    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f630;
    *(undefined4 *)(puVar18 + -0x14) = 0xe8aa4;
    uVar11 = gettext();
    *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
    *(undefined4 *)(puVar18 + -0x14) = 0xe8aac;
    FUN_00065450();
  }
  if (*(int *)(param_1 + 0x593c) != 0) {
    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f621;
    *(undefined4 *)(puVar18 + -0x14) = 0xe8ac3;
    uVar11 = gettext();
    *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
    *(undefined4 *)(puVar18 + -0x14) = 0xe8acb;
    FUN_00065450();
  }
  if (*(char *)(param_1 + 0x56b9) != '\0') {
    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f614;
    *(undefined4 *)(puVar18 + -0x14) = 0xe8a28;
    uVar11 = gettext();
    *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e8a2b to 000e8ae9 has its CatchHandler @ 000e8b37 */
    *(undefined4 *)(puVar18 + -0x14) = 0xe8a30;
    FUN_00065450();
  }
  if (*(char *)(param_1 + 0x2931) != '\0') {
    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f607;
    *(undefined4 *)(puVar18 + -0x14) = 0xe8a47;
    uVar11 = gettext();
    *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
    *(undefined4 *)(puVar18 + -0x14) = 0xe8a4f;
    FUN_00065450();
  }
  if (*(char *)(param_1 + 0x18b1) != '\0') {
    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5fb;
    *(undefined4 *)(puVar18 + -0x14) = 0xe871f;
    uVar11 = gettext();
    *(undefined4 *)(puVar18 + -0x10) = uVar11;
    *(undefined4 *)(puVar18 + -0x14) = 0xe8727;
    FUN_000654e0();
    *(undefined1 *)(param_1 + 0x18b1) = 0;
  }
  bVar22 = *(int *)(param_1 + 0x5934) == 0;
  bVar24 = !bVar22;
  if (bVar24) {
    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5ef;
    *(undefined4 *)(puVar18 + -0x14) = 0xe86e7;
    uVar11 = gettext();
    *(undefined4 *)(puVar18 + -0x10) = uVar11;
    *(undefined4 *)(puVar18 + -0x14) = 0xe86ef;
    FUN_000654e0();
    *(undefined4 *)(param_1 + 0x5934) = 0;
  }
  bVar24 = bVar24 && (undefined1 *)0xffffffef < puVar18 + -0x10;
  bVar22 = bVar22 || puVar18 == (undefined1 *)0x0;
  iVar14 = 5;
  pbVar19 = *(byte **)(param_1 + 0x99c);
  pbVar20 = local_1f0;
  do {
    if (iVar14 == 0) break;
    iVar14 = iVar14 + -1;
    bVar24 = *pbVar19 < *pbVar20;
    bVar22 = *pbVar19 == *pbVar20;
    pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;
    pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;
  } while (bVar22);
  if ((!bVar24 && !bVar22) != bVar24) {
    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5e5;
    *(undefined4 *)(puVar18 + -0x14) = 0xe86af;
    uVar11 = gettext();
    *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* try { // try from 000e86b2 to 000e8726 has its CatchHandler @ 000e8b37 */
    *(undefined4 *)(puVar18 + -0x14) = 0xe86b7;
    FUN_000654e0();
    *(byte **)(param_1 + 0x99c) = local_1f0;
  }
LAB_000e7d53:
  if (*(char *)(param_1 + 0x3344) != '\0') {
    *(undefined1 *)(param_1 + 0x32c9) = 1;
  }
  if (local_1bc != local_1ec) {
    *(undefined1 **)(puVar18 + -0x10) = local_1bc;
    *(undefined4 *)(puVar18 + -0x14) = 0xe7d83;
    FUN_001e6db0();
  }
  return;
}


CALL 0x000559e6
ADD EAX,0x2a7b5b
PUSH EBP
MOV EBP,ESP
PUSH EDI
PUSH ESI
PUSH EBX
SUB ESP,0x1fc
MOV dword ptr [EBP + 0xfffffe40],EAX
MOV EAX,dword ptr [EBP + 0x8]
MOVZX EAX,byte ptr [EAX + 0x3469]
TEST AL,AL
JNZ 0x000e79e0
MOV ESI,dword ptr [EBP + 0x8]
CMP byte ptr [ESI + 0x34e5],0x0
JNZ 0x000e79ea
MOV EBX,dword ptr [EBP + 0x8]
MOVZX EDX,byte ptr [EBX + 0x3561]
TEST DL,DL
JNZ 0x000e85e8
MOV ECX,dword ptr [EBP + 0x8]
CMP byte ptr [ECX + 0x7a9],0x0
JNZ 0x000e7a0c
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0xbcd],0x0
JZ 0x000e7513
MOV byte ptr [EAX + 0xb51],0x1
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0xc49],0x0
JZ 0x000e7526
MOV byte ptr [EAX + 0xb51],0x1
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0xb50],0x0
JNZ 0x000e754b
MOVZX EAX,byte ptr [EAX + 0x318d]
MOV EBX,dword ptr [EBP + 0x8]
MOV byte ptr [EBP + 0xfffffe38],AL
XOR EAX,0x1
MOV byte ptr [EBX + 0xb51],AL
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0x4f31],0x0
JNZ 0x000e7a60
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0x5545],0x0
JZ 0x000e7571
MOV dword ptr [EAX + 0x5930],0x2
MOV EAX,dword ptr [EBP + 0x8]
MOV ECX,0x5
MOV EDX,dword ptr [EAX + 0x1bec]
MOV EAX,dword ptr [EBP + 0xfffffe40]
MOV ESI,EDX
LEA EDI,[EAX + 0xffeff9b2]
MOV dword ptr [EBP + 0xfffffe14],EDI
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JNZ 0x000e7e70
MOV EAX,dword ptr [EBP + 0x8]
MOV dword ptr [EAX + 0x5934],0x0
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0xd4c],0x0
JZ 0x000e7e50
MOV ESI,dword ptr [EAX + 0xd50]
MOV byte ptr [EAX + 0x5939],0x1
CMP byte ptr [ESI],0x0
JNZ 0x000e8660
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0x2870],0x0
JZ 0x000e7616
MOV EDX,dword ptr [EAX + 0x2874]
MOV EAX,dword ptr [EBP + 0xfffffe40]
MOV ECX,0x6
LEA EDI,[EAX + 0xfff14d62]
MOV ESI,EDX
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JNZ 0x000e8120
MOV EAX,dword ptr [EBP + 0x8]
MOV dword ptr [EAX + 0x5a88],0x0
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0x2401],0x0
JZ 0x000e7647
CMP byte ptr [EAX + 0x247c],0x0
JNZ 0x000e7647
MOV EAX,dword ptr [EBP + 0xfffffe40]
MOV EDX,dword ptr [EBP + 0x8]
LEA EAX,[EAX + 0xffefe758]
MOV byte ptr [EDX + 0x247c],0x1
MOV dword ptr [EDX + 0x2480],EAX
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0x24c1],0x0
JNZ 0x000e765c
CMP byte ptr [EAX + 0x253d],0x0
JZ 0x000e7666
MOV EAX,dword ptr [EBP + 0x8]
MOV byte ptr [EAX + 0x5938],0x1
MOV EAX,dword ptr [EBP + 0x8]
MOV EAX,dword ptr [EAX + 0x3de8]
TEST EAX,EAX
JLE 0x000e76b2
MOV ECX,dword ptr [EBP + 0x8]
MOV EBX,dword ptr [ECX + 0x3e2c]
TEST EBX,EBX
JNZ 0x000e7686
MOV dword ptr [ECX + 0x3e2c],EAX
MOV EBX,dword ptr [EBP + 0x8]
MOV EDX,dword ptr [EBX + 0x3e70]
TEST EDX,EDX
JNZ 0x000e769c
MOV ESI,dword ptr [EBP + 0x8]
MOV dword ptr [ESI + 0x3e70],EAX
MOV ESI,dword ptr [EBP + 0x8]
MOV ECX,dword ptr [ESI + 0x3eb4]
TEST ECX,ECX
JNZ 0x000e76b2
MOV EBX,dword ptr [EBP + 0x8]
MOV dword ptr [EBX + 0x3eb4],EAX
LEA EAX,[EBP + 0xfffffe48]
MOV byte ptr [EBP + 0xfffffe50],0x0
MOV dword ptr [EBP + 0xfffffe30],EAX
LEA EAX,[EBP + 0xfffffe50]
MOV dword ptr [EBP + 0xfffffe18],EAX
MOV dword ptr [EBP + 0xfffffe48],EAX
MOV EAX,dword ptr [EBP + 0x8]
MOV dword ptr [EBP + 0xfffffe4c],0x0
CMP byte ptr [EAX + 0x4ca8],0x0
JNZ 0x000e7eb8
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0x2729],0x0
JZ 0x000e8180
MOV EAX,dword ptr [EBP + 0x8]
MOV EDX,dword ptr [EAX + 0x3288]
TEST EDX,EDX
JZ 0x000e7b9e
SUB ESP,0xc
LEA EAX,[EBP + 0xffffff60]
MOV EDI,dword ptr [EBP + 0xfffffe40]
LEA ESI,[EBP + 0xfffffed0]
PUSH EAX
MOV EBX,EDI
MOV dword ptr [EBP + 0xfffffe1c],EAX
MOV dword ptr [EBP + 0xfffffe34],ESI
CALL 0x0022bca0
LEA EDX,[EDI + 0xffffd7b0]
MOV dword ptr [EBP + -0x30],0x0
MOV dword ptr [EBP + -0x28],0x0
LEA EAX,[EDX + 0x8]
MOV dword ptr [EBP + 0xfffffe08],EDX
MOV dword ptr [EBP + 0xffffff60],EAX
XOR EAX,EAX
MOV word ptr [EBP + -0x2c],AX
LEA EAX,[EDI + 0xffffd898]
MOV dword ptr [EBP + -0x24],0x0
MOV EBX,dword ptr [EAX + 0x4]
MOV EDX,dword ptr [EAX + 0x8]
MOV dword ptr [EBP + -0x20],0x0
MOV dword ptr [EBP + -0x1c],0x0
MOV EAX,dword ptr [EBX + -0xc]
MOV dword ptr [EBP + 0xfffffed0],EBX
MOV dword ptr [EBP + 0xfffffe0c],EDX
MOV dword ptr [EBP + EAX*0x1 + 0xfffffed0],EDX
POP EAX
MOV dword ptr [EBP + 0xfffffed4],0x0
MOV EAX,dword ptr [EBX + -0xc]
POP EDX
PUSH 0x0
ADD EAX,ESI
MOV dword ptr [EBP + 0xfffffe10],EBX
MOV EBX,EDI
PUSH EAX
CALL 0x00211450
LEA EDX,[EDI + 0xffffd8a8]
LEA ESI,[EBP + 0xfffffed8]
MOV dword ptr [EBP + 0xfffffe28],ESI
LEA EAX,[EDX + 0xc]
MOV dword ptr [EBP + 0xfffffe04],EDX
MOV dword ptr [EBP + 0xfffffed0],EAX
LEA EAX,[EDX + 0x20]
MOV dword ptr [EBP + 0xffffff60],EAX
MOV dword ptr [ESP],ESI
CALL 0x00213670
POP EDI
POP EAX
PUSH ESI
PUSH dword ptr [EBP + 0xfffffe1c]
CALL 0x00211450
MOV EAX,dword ptr [EBP + 0x8]
ADD ESP,0xc
PUSH 0x8
PUSH dword ptr [EAX + 0x3288]
PUSH ESI
CALL 0x00217950
MOV EDX,dword ptr [EBP + 0xfffffed0]
MOV ECX,dword ptr [EBP + 0xfffffe34]
ADD ESP,0x10
ADD ECX,dword ptr [EDX + -0xc]
TEST EAX,EAX
JZ 0x000e8740
SUB ESP,0x8
MOV EBX,dword ptr [EBP + 0xfffffe40]
PUSH 0x0
PUSH ECX
CALL 0x00210c00
ADD ESP,0x10
TEST byte ptr [EBP + 0xffffff74],0x5
JNZ 0x000e89c8
LEA EAX,[EBP + 0xfffffebc]
MOV byte ptr [EBP + 0xfffffebc],0x0
MOV dword ptr [EBP + 0xfffffe24],EAX
MOV dword ptr [EBP + 0xfffffeb4],EAX
MOV EAX,dword ptr [EBP + 0xfffffed0]
MOV dword ptr [EBP + 0xfffffeb8],0x0
MOV EAX,dword ptr [EAX + -0xc]
MOV ESI,dword ptr [EBP + EAX*0x1 + 0xffffff4c]
TEST ESI,ESI
JZ 0x000e8aea
CMP byte ptr [ESI + 0x1c],0x0
JZ 0x000e80e0
MOVSX EAX,byte ptr [ESI + 0x27]
SUB ESP,0x4
MOV EBX,dword ptr [EBP + 0xfffffe40]
PUSH EAX
LEA EAX,[EBP + 0xfffffeb4]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe34]
MOV dword ptr [EBP + 0xfffffe38],EAX
CALL 0x001e7cb0
MOV EAX,dword ptr [EBP + 0x8]
ADD ESP,0x10
ADD EAX,0x5a3c
MOV dword ptr [EBP + 0xfffffe30],EAX
LEA EAX,[EBP + 0xfffffe44]
MOV dword ptr [EBP + 0xfffffe20],EAX
JMP 0x000e78fa
MOVSX EAX,byte ptr [ESI + 0x27]
SUB ESP,0x4
MOV EBX,dword ptr [EBP + 0xfffffe40]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe38]
PUSH dword ptr [EBP + 0xfffffe34]
CALL 0x001e7cb0
ADD ESP,0x10
MOV EDX,dword ptr [EBP + 0xfffffeb4]
TEST byte ptr [EBP + 0xffffff74],0x5
JNZ 0x000e7ad8
MOV EAX,dword ptr [EBP + 0xfffffeb8]
TEST EAX,EAX
JZ 0x000e7925
CMP byte ptr [EDX + EAX*0x1 + -0x1],0xd
LEA ECX,[EAX + -0x1]
JZ 0x000e7e20
SUB ESP,0x4
MOV EBX,dword ptr [EBP + 0xfffffe40]
PUSH 0xc70f6907
PUSH EAX
PUSH EDX
CALL 0x001e52b0
MOV EDI,dword ptr [EBP + 0x8]
XOR EDX,EDX
MOV ESI,EAX
DIV dword ptr [EDI + 0x5a40]
PUSH ESI
PUSH dword ptr [EBP + 0xfffffe38]
PUSH EDX
PUSH dword ptr [EBP + 0xfffffe30]
MOV dword ptr [EBP + 0xfffffe2c],EDX
CALL 0x000eadf0
ADD ESP,0x20
TEST EAX,EAX
JZ 0x000e7a70
MOV ECX,dword ptr [EAX]
TEST ECX,ECX
JZ 0x000e7a70
MOV EAX,dword ptr [EBP + 0xfffffed0]
MOV EAX,dword ptr [EAX + -0xc]
MOV ESI,dword ptr [EBP + EAX*0x1 + 0xffffff4c]
TEST ESI,ESI
JZ 0x000e88a4
CMP byte ptr [ESI + 0x1c],0x0
JNZ 0x000e78d8
SUB ESP,0xc
MOV EDI,dword ptr [EBP + 0xfffffe40]
PUSH ESI
MOV EBX,EDI
CALL 0x0022ccc0
MOV EAX,dword ptr [ESI]
LEA ECX,[EDI + 0xffd15880]
ADD ESP,0x10
MOV EDX,dword ptr [EAX + 0x18]
MOV EAX,0xa
CMP EDX,ECX
JZ 0x000e78dc
SUB ESP,0x8
PUSH 0xa
PUSH ESI
CALL EDX
ADD ESP,0x10
MOVSX EAX,AL
JMP 0x000e78dc
MOV ECX,dword ptr [EBP + 0x8]
MOV byte ptr [ECX + 0x34e5],0x1
MOV ESI,dword ptr [EBP + 0x8]
MOV EDX,0x1
MOV byte ptr [ESI + 0x3561],0x1
MOV ESI,dword ptr [EBP + 0x8]
CMP byte ptr [ESI + 0x7a9],0x0
MOV byte ptr [ESI + 0x35dd],0x1
JZ 0x000e7a16
MOV ECX,dword ptr [EBP + 0x8]
MOV byte ptr [ECX + 0x1a25],0x1
TEST AL,AL
JZ 0x000e7500
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0x318d],0x0
JZ 0x000e7500
MOV byte ptr [EAX + 0x3469],0x0
TEST DL,DL
JNZ 0x000e7500
MOV EBX,dword ptr [EBP + 0xfffffe40]
PUSH EAX
LEA EAX,[EBX + 0xfff028ec]
PUSH EAX
LEA EAX,[EBX + 0xffefe741]
PUSH 0x453
PUSH EAX
CALL 0x00069d00
MOV dword ptr [EAX + 0x5930],0x1
JMP 0x000e7571
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffe40]
PUSH 0x20
CALL 0x001e5200
MOV dword ptr [EAX],0x0
MOV EDI,EAX
LEA EDX,[EAX + 0x4]
LEA EAX,[EAX + 0xc]
MOV dword ptr [EDI + 0x4],EAX
MOV ECX,dword ptr [EBP + 0xfffffeb8]
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0xfffffeb4]
PUSH 0x0
ADD ECX,EAX
PUSH ECX
PUSH EAX
PUSH EDX
CALL 0x000513a0
POP EAX
POP EDX
PUSH 0x1
PUSH EDI
PUSH ESI
PUSH dword ptr [EBP + 0xfffffe2c]
PUSH dword ptr [EBP + 0xfffffe30]
PUSH dword ptr [EBP + 0xfffffe20]
CALL 0x000ec3b0
ADD ESP,0x1c
JMP 0x000e7975
CMP EDX,dword ptr [EBP + 0xfffffe24]
JZ 0x000e7af2
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffe40]
PUSH EDX
CALL 0x001e6db0
ADD ESP,0x10
MOV ECX,dword ptr [EBP + 0xfffffe04]
MOV EDI,dword ptr [EBP + 0xfffffe40]
SUB ESP,0xc
PUSH dword ptr [EBP + 0xfffffe28]
LEA EAX,[ECX + 0xc]
MOV EBX,EDI
MOV dword ptr [EBP + 0xfffffed0],EAX
LEA EAX,[ECX + 0x20]
MOV dword ptr [EBP + 0xffffff60],EAX
LEA EAX,[EDI + 0xffffd830]
ADD EAX,0x8
MOV dword ptr [EBP + 0xfffffed8],EAX
CALL 0x00216e90
LEA EAX,[EBP + 0xffffff10]
MOV dword ptr [ESP],EAX
CALL 0x001e75f0
LEA EAX,[EDI + 0xffffd09c]
ADD EAX,0x8
MOV dword ptr [EBP + 0xfffffed8],EAX
LEA EAX,[EBP + 0xfffffef4]
MOV dword ptr [ESP],EAX
CALL 0x001e9510
MOV EAX,dword ptr [EBP + 0xfffffe10]
MOV ECX,dword ptr [EBP + 0xfffffe0c]
MOV dword ptr [EBP + 0xfffffed0],EAX
MOV EAX,dword ptr [EAX + -0xc]
MOV dword ptr [EBP + EAX*0x1 + 0xfffffed0],ECX
MOV EAX,dword ptr [EBP + 0xfffffe08]
MOV dword ptr [EBP + 0xfffffed4],0x0
ADD EAX,0x8
MOV dword ptr [EBP + 0xffffff60],EAX
POP EAX
PUSH dword ptr [EBP + 0xfffffe1c]
CALL 0x0022c040
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0x72d],0x0
JZ 0x000e7bc8
CMP byte ptr [EAX + 0x42e0],0x0
JNZ 0x000e7bc8
MOV EAX,dword ptr [EBP + 0xfffffe40]
MOV EDI,dword ptr [EBP + 0x8]
LEA EAX,[EAX + 0xffef1725]
MOV dword ptr [EDI + 0x42e4],EAX
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0x1a25],0x0
JZ 0x000e7be4
CMP byte ptr [EAX + 0x1fc],0x0
JNZ 0x000e7be4
MOV byte ptr [EAX + 0x1fd],0x1
SUB ESP,0xc
PUSH dword ptr [EBP + 0x8]
CALL 0x000ddde0
MOV EAX,dword ptr [EBP + 0x8]
ADD ESP,0x10
CMP byte ptr [EAX + 0x1a25],0x0
JZ 0x000e7d90
CMP byte ptr [EAX + 0x5938],0x0
JNZ 0x000e8acb
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0x2931],0x0
JNZ 0x000e8918
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0x318d],0x0
JNZ 0x000e8937
MOV EAX,dword ptr [EBP + 0x8]
SUB ESP,0xc
PUSH dword ptr [EAX + 0x27ec]
CALL 0x000dd760
ADD ESP,0x10
TEST EAX,EAX
JZ 0x000e7c71
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0x1a25],0x0
JNZ 0x000e88f9
CMP byte ptr [EAX + 0x2931],0x0
JNZ 0x000e88f9
CMP byte ptr [EAX + 0x318d],0x0
JNZ 0x000e88f9
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0x1ae4],0x0
JZ 0x000e7c9d
FLD qword ptr [EAX + 0x1ae8]
FLDZ
FCOMIP ST0,ST1
JA 0x000e88af
FLD1
FXCH
FCOMI ST0,ST1
FSTP ST1
JNC 0x000e88af
FSTP ST0
MOV ECX,dword ptr [EBP + 0x8]
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [ECX + 0x5a1c],0x0
MOV EAX,dword ptr [EAX + 0x5a10]
JZ 0x000e7ea8
TEST EAX,EAX
JZ 0x000e8a4f
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0x318d],0x0
JNZ 0x000e8a6e
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0x3095],0x0
JNZ 0x000e8a8d
MOV EAX,dword ptr [EBP + 0x8]
MOV ESI,dword ptr [EAX + 0x593c]
TEST ESI,ESI
JNZ 0x000e8aac
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0x56b9],0x0
JNZ 0x000e8a11
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0x2931],0x0
JNZ 0x000e8a30
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0x18b1],0x0
JNZ 0x000e8708
MOV EAX,dword ptr [EBP + 0x8]
MOV EBX,dword ptr [EAX + 0x5934]
TEST EBX,EBX
JNZ 0x000e86d0
MOV EAX,dword ptr [EBP + 0x8]
MOV EDI,dword ptr [EBP + 0xfffffe14]
MOV ECX,0x5
MOV ESI,dword ptr [EAX + 0x99c]
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JNZ 0x000e8698
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0x3344],0x0
JZ 0x000e7d66
MOV byte ptr [EAX + 0x32c9],0x1
MOV EAX,dword ptr [EBP + 0xfffffe48]
CMP EAX,dword ptr [EBP + 0xfffffe18]
JZ 0x000e7d86
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffe40]
PUSH EAX
CALL 0x001e6db0
ADD ESP,0x10
LEA ESP,[EBP + -0xc]
POP EBX
POP ESI
POP EDI
POP EBP
RET
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0x2931],0x0
JZ 0x000e7dbc
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0x5938],0x0
JNZ 0x000e8af5
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0x318d],0x0
JNZ 0x000e8956
MOV EAX,dword ptr [EBP + 0x8]
MOV EAX,dword ptr [EAX + 0x1478]
TEST EAX,EAX
JNZ 0x000e8975
MOV EAX,dword ptr [EBP + 0x8]
MOV EAX,dword ptr [EAX + 0x1428]
TEST EAX,EAX
JNZ 0x000e89a9
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0x318d],0x0
JZ 0x000e7c2f
MOV EDI,dword ptr [EAX + 0x3288]
TEST EDI,EDI
JZ 0x000e7c2f
MOV ESI,dword ptr [EBP + 0xfffffe40]
SUB ESP,0xc
LEA EAX,[ESI + 0xfff025f0]
MOV EBX,ESI
PUSH EAX
CALL 0x000293b0
MOV dword ptr [ESP],EAX
CALL 0x00065450
SUB ESP,0x4
MOV EBX,dword ptr [EBP + 0xfffffe40]
PUSH 0x0
PUSH ECX
PUSH dword ptr [EBP + 0xfffffe38]
CALL 0x001ef780
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0xfffffeb8]
MOV EDX,dword ptr [EBP + 0xfffffeb4]
JMP 0x000e7925
MOV EAX,dword ptr [EBP + 0x8]
CMP byte ptr [EAX + 0xd90],0x0
JZ 0x000e8630
MOV byte ptr [EAX + 0x5939],0x0
JMP 0x000e75d5
MOV EAX,dword ptr [EBP + 0xfffffe40]
MOV ESI,EDX
MOV ECX,0x5
LEA EDI,[EAX + 0xffeff304]
CMPSB.REPE ES:EDI,ESI
MOV ESI,dword ptr [EBP + 0x8]
SETA AL
SBB AL,0x0
TEST AL,AL
SETZ AL
MOVZX EAX,AL
ADD EAX,0x1
MOV dword ptr [ESI + 0x5934],EAX
JMP 0x000e75af
TEST EAX,EAX
JZ 0x000e7d53
JMP 0x000e7cbe
MOV ESI,dword ptr [EAX + 0x4cac]
SUB ESP,0xc
MOV EDI,dword ptr [EBP + 0xfffffe40]
PUSH ESI
MOV EBX,EDI
CALL 0x000295f0
MOV dword ptr [ESP],EAX
PUSH ESI
MOV ESI,dword ptr [EBP + 0xfffffe30]
PUSH 0x0
PUSH 0x0
PUSH ESI
CALL 0x001ef9f0
ADD ESP,0x20
LEA EAX,[EDI + 0xffeffc3a]
PUSH EAX
PUSH 0x2
PUSH 0x0
PUSH ESI
CALL 0x001f13d0
ADD ESP,0x10
MOV ECX,dword ptr [EBP + 0xfffffe4c]
TEST EAX,EAX
JZ 0x000e8760
LEA EAX,[EBP + 0xfffffeb4]
XOR EDI,EDI
MOV dword ptr [EBP + 0xfffffe38],EAX
TEST ECX,ECX
JNZ 0x000e7f29
JMP 0x000e7701
MOV ECX,EAX
SUB ECX,EDI
JNZ 0x000e7f4f
LEA EDI,[ESI + 0x1]
SUB ESP,0x4
MOV EBX,dword ptr [EBP + 0xfffffe40]
PUSH EDI
PUSH 0x3a
PUSH dword ptr [EBP + 0xfffffe30]
CALL 0x001f0c10
ADD ESP,0x10
MOV ECX,0xffffffff
MOV ESI,EAX
CMP EAX,-0x1
JNZ 0x000e7f20
MOV EAX,dword ptr [EBP + 0xfffffe4c]
CMP EDI,EAX
JA 0x000e88de
LEA EBX,[EBP + 0xfffffebc]
SUB EAX,EDI
PUSH 0x0
MOV dword ptr [EBP + 0xfffffe24],EBX
MOV dword ptr [EBP + 0xfffffeb4],EBX
MOV EBX,dword ptr [EBP + 0xfffffe48]
ADD EBX,EDI
CMP EAX,ECX
CMOVA EAX,ECX
ADD EAX,EBX
PUSH EAX
PUSH EBX
PUSH dword ptr [EBP + 0xfffffe38]
CALL 0x00050e40
LEA EAX,[EBP + 0xfffffed8]
MOV EDX,dword ptr [EBP + 0xfffffeb8]
ADD ESP,0x10
LEA ECX,[EBP + 0xfffffed0]
MOV dword ptr [EBP + 0xfffffe28],EAX
MOV dword ptr [EBP + 0xfffffed0],EAX
MOV EAX,dword ptr [EBP + 0xfffffeb4]
PUSH 0x0
ADD EDX,EAX
MOV dword ptr [EBP + 0xfffffe34],ECX
PUSH EDX
PUSH EAX
PUSH ECX
CALL 0x000513a0
MOV EBX,dword ptr [EBP + 0xfffffed4]
MOV ECX,0x1
ADD ESP,0x10
MOV word ptr [EBP + 0xfffffee8],CX
TEST EBX,EBX
JZ 0x000e8090
MOV EAX,dword ptr [EBP + 0x8]
MOV EBX,dword ptr [EAX + 0x2188]
CMP EBX,dword ptr [EAX + 0x218c]
JZ 0x000e80c0
LEA EAX,[EBX + 0x8]
MOV dword ptr [EBX],EAX
MOV EAX,dword ptr [EBP + 0xfffffed0]
MOV EDX,dword ptr [EBP + 0xfffffed4]
PUSH 0x0
ADD EDX,EAX
PUSH EDX
PUSH EAX
PUSH EBX
CALL 0x000513a0
MOVZX EAX,byte ptr [EBP + 0xfffffee8]
ADD ESP,0x10
MOV byte ptr [EBX + 0x18],AL
MOVZX EAX,byte ptr [EBP + 0xfffffee9]
MOV byte ptr [EBX + 0x19],AL
MOV EAX,dword ptr [EBP + 0x8]
ADD dword ptr [EAX + 0x2188],0x1c
MOV EAX,dword ptr [EBP + 0xfffffed0]
CMP EAX,dword ptr [EBP + 0xfffffe28]
JZ 0x000e8058
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffe40]
PUSH EAX
CALL 0x001e6db0
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0xfffffeb4]
CMP EAX,dword ptr [EBP + 0xfffffe24]
JZ 0x000e8078
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffe40]
PUSH EAX
CALL 0x001e6db0
ADD ESP,0x10
CMP ESI,-0x1
JNZ 0x000e7f26
JMP 0x000e7701
MOV EBX,dword ptr [EBP + 0xfffffe40]
SUB ESP,0xc
PUSH 0x1
LEA EAX,[EBX + 0xffefec4b]
PUSH EAX
PUSH 0x0
PUSH 0x0
PUSH dword ptr [EBP + 0xfffffe34]
CALL 0x001ef9f0
ADD ESP,0x20
JMP 0x000e7fe5
MOV EAX,dword ptr [EBP + 0x8]
SUB ESP,0x4
PUSH dword ptr [EBP + 0xfffffe34]
PUSH EBX
ADD EAX,0x2184
PUSH EAX
CALL 0x000eae90
ADD ESP,0x10
JMP 0x000e8038
SUB ESP,0xc
MOV EDI,dword ptr [EBP + 0xfffffe40]
PUSH ESI
MOV EBX,EDI
CALL 0x0022ccc0
MOV EAX,dword ptr [ESI]
LEA ECX,[EDI + 0xffd15880]
ADD ESP,0x10
MOV EDX,dword ptr [EAX + 0x18]
MOV EAX,0xa
CMP EDX,ECX
JZ 0x000e7894
SUB ESP,0x8
PUSH 0xa
PUSH ESI
CALL EDX
ADD ESP,0x10
MOVSX EAX,AL
JMP 0x000e7894
MOV EAX,dword ptr [EBP + 0xfffffe40]
MOV ECX,0x8
MOV ESI,EDX
LEA EDI,[EAX + 0xffef170d]
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x000e85d0
MOV EAX,dword ptr [EBP + 0xfffffe40]
MOV ECX,0x5
MOV ESI,EDX
LEA EDI,[EAX + 0xffef1715]
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JNZ 0x000e8870
MOV EAX,dword ptr [EBP + 0x8]
MOV dword ptr [EAX + 0x5a88],0x2
JMP 0x000e7616
MOV ECX,dword ptr [EBP + 0xfffffe40]
LEA EAX,[EBP + 0xfffffed8]
PUSH 0x0
LEA EBX,[EBP + 0xfffffed0]
MOV dword ptr [EBP + 0xfffffe28],EAX
MOV dword ptr [EBP + 0xfffffed0],EAX
LEA EAX,[ECX + 0xffeffc4e]
PUSH EAX
LEA EAX,[ECX + 0xffeffc41]
PUSH EAX
PUSH EBX
MOV dword ptr [EBP + 0xfffffe34],EBX
CALL 0x00050e40
MOV EAX,dword ptr [EBP + 0xfffffed0]
MOV EDX,dword ptr [EBP + 0xfffffed4]
ADD ESP,0x10
LEA ESI,[EBP + 0xfffffe60]
PUSH 0x0
LEA EDI,[EBP + 0xfffffe68]
ADD EDX,EAX
MOV dword ptr [EBP + 0xfffffe60],EDI
PUSH EDX
PUSH EAX
PUSH ESI
CALL 0x000513a0
MOV EAX,0x1
ADD ESP,0x10
MOV word ptr [EBP + 0xfffffe78],AX
MOV EAX,dword ptr [EBP + 0xfffffe64]
TEST EAX,EAX
JZ 0x000e85f0
MOV EAX,dword ptr [EBP + 0x8]
ADD EAX,0x2184
MOV dword ptr [EBP + 0xfffffe2c],EAX
MOV EAX,dword ptr [EBP + 0x8]
MOV EBX,dword ptr [EAX + 0x2188]
CMP EBX,dword ptr [EAX + 0x218c]
JZ 0x000e8618
LEA EAX,[EBX + 0x8]
MOV dword ptr [EBX],EAX
MOV EAX,dword ptr [EBP + 0xfffffe60]
MOV EDX,dword ptr [EBP + 0xfffffe64]
PUSH 0x0
ADD EDX,EAX
PUSH EDX
PUSH EAX
PUSH EBX
CALL 0x000513a0
MOVZX EAX,byte ptr [EBP + 0xfffffe78]
ADD ESP,0x10
MOV byte ptr [EBX + 0x18],AL
MOVZX EAX,byte ptr [EBP + 0xfffffe79]
MOV byte ptr [EBX + 0x19],AL
MOV EAX,dword ptr [EBP + 0x8]
ADD dword ptr [EAX + 0x2188],0x1c
MOV EAX,dword ptr [EBP + 0xfffffe60]
CMP EAX,EDI
JZ 0x000e8281
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffe40]
PUSH EAX
CALL 0x001e6db0
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0xfffffed0]
CMP EAX,dword ptr [EBP + 0xfffffe28]
JZ 0x000e82a1
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffe40]
PUSH EAX
CALL 0x001e6db0
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0xfffffe28]
MOV ESI,dword ptr [EBP + 0xfffffe40]
PUSH 0x0
MOV dword ptr [EBP + 0xfffffed0],EAX
LEA EAX,[ESI + 0xffeffc4e]
PUSH EAX
LEA EAX,[ESI + 0xffeffc3d]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe34]
CALL 0x00050e40
MOV EAX,dword ptr [EBP + 0xfffffed0]
MOV EDX,dword ptr [EBP + 0xfffffed4]
ADD ESP,0x10
LEA ESI,[EBP + 0xfffffe7c]
PUSH 0x0
LEA EDI,[EBP + 0xfffffe84]
ADD EDX,EAX
MOV dword ptr [EBP + 0xfffffe7c],EDI
PUSH EDX
PUSH EAX
PUSH ESI
CALL 0x000513a0
MOV EAX,0x1
ADD ESP,0x10
MOV word ptr [EBP + 0xfffffe94],AX
MOV EAX,dword ptr [EBP + 0xfffffe80]
TEST EAX,EAX
JZ 0x000e8790
MOV EAX,dword ptr [EBP + 0x8]
MOV EBX,dword ptr [EAX + 0x2188]
CMP EBX,dword ptr [EAX + 0x218c]
JZ 0x000e8830
LEA EAX,[EBX + 0x8]
MOV dword ptr [EBX],EAX
MOV EAX,dword ptr [EBP + 0xfffffe7c]
MOV EDX,dword ptr [EBP + 0xfffffe80]
PUSH 0x0
ADD EDX,EAX
PUSH EDX
PUSH EAX
PUSH EBX
CALL 0x000513a0
MOVZX EAX,byte ptr [EBP + 0xfffffe94]
ADD ESP,0x10
MOV byte ptr [EBX + 0x18],AL
MOVZX EAX,byte ptr [EBP + 0xfffffe95]
MOV byte ptr [EBX + 0x19],AL
MOV EAX,dword ptr [EBP + 0x8]
ADD dword ptr [EAX + 0x2188],0x1c
MOV EAX,dword ptr [EBP + 0xfffffe7c]
CMP EAX,EDI
JZ 0x000e8387
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffe40]
PUSH EAX
CALL 0x001e6db0
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0xfffffed0]
CMP EAX,dword ptr [EBP + 0xfffffe28]
JZ 0x000e83a7
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffe40]
PUSH EAX
CALL 0x001e6db0
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0xfffffe28]
MOV EBX,dword ptr [EBP + 0xfffffe40]
PUSH 0x0
MOV dword ptr [EBP + 0xfffffed0],EAX
LEA EAX,[EBX + 0xffeffc57]
PUSH EAX
LEA EAX,[EBX + 0xffeffc53]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe34]
CALL 0x00050e40
MOV EAX,dword ptr [EBP + 0xfffffed0]
MOV EDX,dword ptr [EBP + 0xfffffed4]
ADD ESP,0x10
LEA ESI,[EBP + 0xfffffe98]
PUSH 0x0
LEA EDI,[EBP + 0xfffffea0]
ADD EDX,EAX
MOV dword ptr [EBP + 0xfffffe98],EDI
PUSH EDX
PUSH EAX
PUSH ESI
CALL 0x000513a0
MOV EAX,0x1
ADD ESP,0x10
MOV word ptr [EBP + 0xfffffeb0],AX
MOV EAX,dword ptr [EBP + 0xfffffe9c]
TEST EAX,EAX
JZ 0x000e87b8
MOV EAX,dword ptr [EBP + 0x8]
MOV EBX,dword ptr [EAX + 0x2188]
CMP EBX,dword ptr [EAX + 0x218c]
JZ 0x000e8810
LEA EAX,[EBX + 0x8]
MOV dword ptr [EBX],EAX
MOV EAX,dword ptr [EBP + 0xfffffe98]
MOV EDX,dword ptr [EBP + 0xfffffe9c]
PUSH 0x0
ADD EDX,EAX
PUSH EDX
PUSH EAX
PUSH EBX
CALL 0x000513a0
MOVZX EAX,byte ptr [EBP + 0xfffffeb0]
ADD ESP,0x10
MOV byte ptr [EBX + 0x18],AL
MOVZX EAX,byte ptr [EBP + 0xfffffeb1]
MOV byte ptr [EBX + 0x19],AL
MOV EAX,dword ptr [EBP + 0x8]
ADD dword ptr [EAX + 0x2188],0x1c
MOV EAX,dword ptr [EBP + 0xfffffe98]
CMP EAX,EDI
JZ 0x000e848d
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffe40]
PUSH EAX
CALL 0x001e6db0
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0xfffffed0]
CMP EAX,dword ptr [EBP + 0xfffffe28]
JZ 0x000e84ad
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffe40]
PUSH EAX
CALL 0x001e6db0
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0xfffffe28]
MOV EDI,dword ptr [EBP + 0xfffffe40]
PUSH 0x0
MOV dword ptr [EBP + 0xfffffed0],EAX
LEA EAX,[EDI + 0xffeffc57]
PUSH EAX
LEA EAX,[EDI + 0xffeffc4f]
PUSH EAX
PUSH dword ptr [EBP + 0xfffffe34]
CALL 0x00050e40
LEA EAX,[EBP + 0xfffffebc]
MOV EDX,dword ptr [EBP + 0xfffffed4]
ADD ESP,0x10
LEA ECX,[EBP + 0xfffffeb4]
MOV dword ptr [EBP + 0xfffffe24],EAX
MOV dword ptr [EBP + 0xfffffeb4],EAX
MOV EAX,dword ptr [EBP + 0xfffffed0]
PUSH 0x0
ADD EDX,EAX
MOV dword ptr [EBP + 0xfffffe38],ECX
PUSH EDX
PUSH EAX
PUSH ECX
CALL 0x000513a0
MOV EDI,dword ptr [EBP + 0xfffffeb8]
MOV ESI,0x1
ADD ESP,0x10
MOV word ptr [EBP + 0xfffffecc],SI
TEST EDI,EDI
JZ 0x000e87e0
MOV EAX,dword ptr [EBP + 0x8]
MOV EBX,dword ptr [EAX + 0x2188]
CMP EBX,dword ptr [EAX + 0x218c]
JZ 0x000e8850
LEA EAX,[EBX + 0x8]
MOV dword ptr [EBX],EAX
MOV EAX,dword ptr [EBP + 0xfffffeb4]
MOV EDX,dword ptr [EBP + 0xfffffeb8]
PUSH 0x0
ADD EDX,EAX
PUSH EDX
PUSH EAX
PUSH EBX
CALL 0x000513a0
MOVZX EAX,byte ptr [EBP + 0xfffffecc]
ADD ESP,0x10
MOV byte ptr [EBX + 0x18],AL
MOVZX EAX,byte ptr [EBP + 0xfffffecd]
MOV byte ptr [EBX + 0x19],AL
MOV EAX,dword ptr [EBP + 0x8]
ADD dword ptr [EAX + 0x2188],0x1c
MOV EAX,dword ptr [EBP + 0xfffffeb4]
CMP EAX,dword ptr [EBP + 0xfffffe24]
JZ 0x000e85a3
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffe40]
PUSH EAX
CALL 0x001e6db0
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0xfffffed0]
CMP EAX,dword ptr [EBP + 0xfffffe28]
JZ 0x000e85c3
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffe40]
PUSH EAX
CALL 0x001e6db0
ADD ESP,0x10
MOV ECX,dword ptr [EBP + 0xfffffe4c]
JMP 0x000e7f08
MOV EAX,dword ptr [EBP + 0x8]
MOV dword ptr [EAX + 0x5a88],0x1
JMP 0x000e7616
XOR EDX,EDX
JMP 0x000e79f9
MOV EBX,dword ptr [EBP + 0xfffffe40]
SUB ESP,0xc
PUSH 0x1
LEA EAX,[EBX + 0xffefec4b]
PUSH EAX
PUSH 0x0
PUSH 0x0
PUSH ESI
CALL 0x001ef9f0
ADD ESP,0x20
JMP 0x000e8204
SUB ESP,0x4
PUSH ESI
PUSH EBX
PUSH dword ptr [EBP + 0xfffffe2c]
CALL 0x000eae90
ADD ESP,0x10
JMP 0x000e8265
MOV EBX,dword ptr [EBP + 0xfffffe40]
SUB ESP,0xc
LEA EAX,[EBX + 0xffeffc26]
PUSH EAX
CALL 0x00029200
ADD ESP,0x10
TEST EAX,EAX
MOV EAX,dword ptr [EBP + 0x8]
SETZ byte ptr [EAX + 0x5939]
JMP 0x000e75d5
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffe40]
PUSH ESI
CALL 0x001ce8a0
ADD ESP,0x10
TEST EAX,EAX
JZ 0x000e8994
SUB ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffe40]
PUSH EAX
CALL 0x001ce850
ADD ESP,0x10
JMP 0x000e75d5
MOV EDI,dword ptr [EBP + 0xfffffe40]
SUB ESP,0xc
LEA EAX,[EDI + 0xfff0286c]
MOV EBX,EDI
PUSH EAX
CALL 0x000293b0
MOV dword ptr [ESP],EAX
CALL 0x000654e0
MOV EAX,dword ptr [EBP + 0x8]
MOV EDI,dword ptr [EBP + 0xfffffe14]
ADD ESP,0x10
MOV dword ptr [EAX + 0x99c],EDI
JMP 0x000e7d53
MOV EDI,dword ptr [EBP + 0xfffffe40]
SUB ESP,0xc
LEA EAX,[EDI + 0xfff02844]
MOV EBX,EDI
PUSH EAX
CALL 0x000293b0
MOV dword ptr [ESP],EAX
CALL 0x000654e0
MOV EAX,dword ptr [EBP + 0x8]
ADD ESP,0x10
MOV dword ptr [EAX + 0x5934],0x0
JMP 0x000e7d30
MOV ESI,dword ptr [EBP + 0xfffffe40]
SUB ESP,0xc
LEA EAX,[ESI + 0xfff02814]
MOV EBX,ESI
PUSH EAX
CALL 0x000293b0
MOV dword ptr [ESP],EAX
CALL 0x000654e0
MOV EAX,dword ptr [EBP + 0x8]
ADD ESP,0x10
MOV byte ptr [EAX + 0x18b1],0x0
JMP 0x000e7d1f
MOV EAX,dword ptr [ECX + 0x14]
SUB ESP,0x8
MOV EBX,dword ptr [EBP + 0xfffffe40]
OR EAX,0x4
PUSH EAX
PUSH ECX
CALL 0x00210c00
JMP 0x000e783b
SUB ESP,0x4
MOV EAX,0x2
CMP ECX,0x2
MOV EBX,dword ptr [EBP + 0xfffffe40]
CMOVA ECX,EAX
PUSH ECX
PUSH 0x0
PUSH dword ptr [EBP + 0xfffffe30]
CALL 0x001eebf0
JMP 0x000e85c0
MOV EBX,dword ptr [EBP + 0xfffffe40]
SUB ESP,0xc
PUSH 0x1
LEA EAX,[EBX + 0xffefec4b]
PUSH EAX
PUSH 0x0
PUSH 0x0
PUSH ESI
CALL 0x001ef9f0
ADD ESP,0x20
JMP 0x000e8318
MOV EBX,dword ptr [EBP + 0xfffffe40]
SUB ESP,0xc
PUSH 0x1
LEA EAX,[EBX + 0xffefec4b]
PUSH EAX
PUSH 0x0
PUSH 0x0
PUSH ESI
CALL 0x001ef9f0
ADD ESP,0x20
JMP 0x000e841e
MOV EBX,dword ptr [EBP + 0xfffffe40]
SUB ESP,0xc
PUSH 0x1
LEA EAX,[EBX + 0xffefec4b]
PUSH EAX
PUSH 0x0
PUSH 0x0
PUSH dword ptr [EBP + 0xfffffe38]
CALL 0x001ef9f0
ADD ESP,0x20
JMP 0x000e8530
SUB ESP,0x4
PUSH ESI
PUSH EBX
PUSH dword ptr [EBP + 0xfffffe2c]
CALL 0x000eae90
ADD ESP,0x10
JMP 0x000e8471
SUB ESP,0x4
PUSH ESI
PUSH EBX
PUSH dword ptr [EBP + 0xfffffe2c]
CALL 0x000eae90
ADD ESP,0x10
JMP 0x000e836b
SUB ESP,0x4
PUSH dword ptr [EBP + 0xfffffe38]
PUSH EBX
PUSH dword ptr [EBP + 0xfffffe2c]
CALL 0x000eae90
ADD ESP,0x10
JMP 0x000e8583
MOV EAX,dword ptr [EBP + 0xfffffe40]
MOV ECX,0x6
MOV ESI,EDX
LEA EDI,[EAX + 0xfff15fde]
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JNZ 0x000e7616
MOV EAX,dword ptr [EBP + 0x8]
MOV dword ptr [EAX + 0x5a88],0x3
JMP 0x000e7616
MOV EBX,dword ptr [EBP + 0xfffffe40]
CALL 0x0022c630
MOV ESI,dword ptr [EBP + 0xfffffe40]
SUB ESP,0xc
FSTP qword ptr [EBP + 0xfffffe38]
LEA EAX,[ESI + 0xfff02660]
MOV EBX,ESI
PUSH EAX
CALL 0x000293b0
FLD qword ptr [EBP + 0xfffffe38]
MOV dword ptr [ESP],EAX
FSTP qword ptr [ESP + 0x4]
CALL 0x00065450
MOV EBX,dword ptr [EBP + 0xfffffe40]
PUSH EAX
PUSH EDI
LEA EAX,[EBX + 0xffeffc58]
PUSH EAX
LEA EAX,[EBX + 0xffefbec4]
PUSH EAX
CALL 0x0022c840
MOV ESI,dword ptr [EBP + 0xfffffe40]
SUB ESP,0xc
LEA EAX,[ESI + 0xfff02620]
MOV EBX,ESI
PUSH EAX
CALL 0x000293b0
MOV dword ptr [ESP],EAX
CALL 0x00065450
MOV ESI,dword ptr [EBP + 0xfffffe40]
SUB ESP,0xc
LEA EAX,[ESI + 0xfff0252c]
MOV EBX,ESI
PUSH EAX
CALL 0x000293b0
MOV dword ptr [ESP],EAX
CALL 0x00065450
MOV ESI,dword ptr [EBP + 0xfffffe40]
SUB ESP,0xc
LEA EAX,[ESI + 0xfff02574]
MOV EBX,ESI
PUSH EAX
CALL 0x000293b0
MOV dword ptr [ESP],EAX
CALL 0x00065450
MOV ESI,dword ptr [EBP + 0xfffffe40]
SUB ESP,0xc
LEA EAX,[ESI + 0xffeffc6d]
MOV EBX,ESI
PUSH EAX
CALL 0x000293b0
MOV dword ptr [ESP],EAX
CALL 0x00065450
MOV ESI,dword ptr [EBP + 0xfffffe40]
SUB ESP,0xc
LEA EAX,[ESI + 0xfff02594]
MOV EBX,ESI
PUSH EAX
CALL 0x000293b0
MOV dword ptr [ESP],EAX
CALL 0x00065450
MOV EBX,dword ptr [EBP + 0xfffffe40]
PUSH EDI
PUSH EDI
LEA EAX,[EBX + 0xffeffc08]
PUSH ESI
PUSH EAX
CALL 0x00065450
MOV ESI,dword ptr [EBP + 0xfffffe40]
SUB ESP,0xc
LEA EAX,[ESI + 0xfff025c0]
MOV EBX,ESI
PUSH EAX
CALL 0x000293b0
MOV dword ptr [ESP],EAX
CALL 0x00065450
MOV ESI,dword ptr [EBP + 0xfffffe40]
MOV EBX,ESI
CALL 0x00029090
SUB ESP,0xc
PUSH dword ptr [EAX]
CALL 0x00029100
MOV ECX,dword ptr [EBP + 0xfffffe40]
MOV EDI,EAX
MOV EAX,dword ptr [EBP + 0x8]
MOV EBX,ECX
MOV ESI,dword ptr [EAX + 0x3288]
LEA EAX,[ECX + 0xfff024d4]
MOV dword ptr [ESP],EAX
CALL 0x000293b0
ADD ESP,0xc
MOV EBX,dword ptr [EBP + 0xfffffe40]
PUSH EDI
PUSH ESI
PUSH EAX
CALL 0x00065450
MOV EDI,dword ptr [EBP + 0xfffffe40]
SUB ESP,0xc
LEA EAX,[EDI + 0xfff027b0]
MOV EBX,EDI
PUSH EAX
CALL 0x000293b0
MOV dword ptr [ESP],EAX
CALL 0x00065450
MOV ESI,dword ptr [EBP + 0xfffffe40]
SUB ESP,0xc
LEA EAX,[ESI + 0xfff027e4]
MOV EBX,ESI
PUSH EAX
CALL 0x000293b0
MOV dword ptr [ESP],EAX
CALL 0x00065450
MOV EDI,dword ptr [EBP + 0xfffffe40]
SUB ESP,0xc
LEA EAX,[EDI + 0xfff026a0]
MOV EBX,EDI
PUSH EAX
CALL 0x000293b0
MOV dword ptr [ESP],EAX
CALL 0x00065450
MOV EDI,dword ptr [EBP + 0xfffffe40]
SUB ESP,0xc
LEA EAX,[EDI + 0xfff02710]
MOV EBX,EDI
PUSH EAX
CALL 0x000293b0
MOV dword ptr [ESP],EAX
CALL 0x00065450
MOV EDI,dword ptr [EBP + 0xfffffe40]
SUB ESP,0xc
LEA EAX,[EDI + 0xfff02740]
MOV EBX,EDI
PUSH EAX
CALL 0x000293b0
MOV dword ptr [ESP],EAX
CALL 0x00065450
MOV ESI,dword ptr [EBP + 0xfffffe40]
SUB ESP,0xc
LEA EAX,[ESI + 0xfff0277c]
MOV EBX,ESI
PUSH EAX
CALL 0x000293b0
MOV dword ptr [ESP],EAX
CALL 0x00065450
MOV ESI,dword ptr [EBP + 0xfffffe40]
SUB ESP,0xc
LEA EAX,[ESI + 0xfff02504]
MOV EBX,ESI
PUSH EAX
CALL 0x000293b0
MOV dword ptr [ESP],EAX
CALL 0x00065450
MOV EBX,dword ptr [EBP + 0xfffffe40]
CALL 0x0022c630
MOV ESI,dword ptr [EBP + 0xfffffe40]
SUB ESP,0xc
LEA EAX,[ESI + 0xfff02550]
MOV EBX,ESI
PUSH EAX
CALL 0x000293b0
MOV dword ptr [ESP],EAX
CALL 0x00065450
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.ax replaced with injection: get_pc_thunk_ax */\n\nvoid FUN_000e74a0(int param_1)\n\n{\n  double dVar1;\n  undefined **ppuVar2;\n  undefined1 **ppuVar3;\n  undefined **ppuVar4;\n  char cVar5;\n  uint uVar6;\n  int *piVar7;\n  undefined4 *puVar8;\n  size_t sVar9;\n  uint uVar10;\n  undefined4 uVar11;\n  char *pcVar12;\n  undefined4 uVar13;\n  int iVar14;\n  undefined *puVar15;\n  uint uVar16;\n  undefined1 *puVar17;\n  undefined1 *puVar18;\n  byte *pbVar19;\n  byte *pbVar20;\n  byte *pbVar21;\n  bool bVar22;\n  bool bVar23;\n  bool bVar24;\n  byte bVar25;\n  undefined4 uStackY_230;\n  undefined1 auStack_20c [12];\n  undefined **local_200;\n  undefined **local_1fc;\n  undefined *local_1f8;\n  undefined ***local_1f4;\n  byte *local_1f0;\n  undefined1 *local_1ec;\n  undefined ***local_1e8;\n  undefined1 *local_1e4;\n  undefined1 *local_1e0;\n  undefined ***local_1dc;\n  uint local_1d8;\n  undefined1 **local_1d4;\n  undefined ***local_1d0;\n  double local_1cc;\n  undefined **local_1c4;\n  undefined1 local_1c0 [4];\n  undefined1 *local_1bc;\n  uint local_1b8;\n  undefined1 local_1b4 [16];\n  undefined1 *local_1a4;\n  int local_1a0;\n  undefined1 local_19c [16];\n  undefined2 local_18c;\n  undefined1 *local_188;\n  int local_184;\n  undefined1 local_180 [16];\n  undefined2 local_170;\n  undefined1 *local_16c;\n  int local_168;\n  undefined1 local_164 [16];\n  undefined2 local_154;\n  undefined1 *local_150;\n  int local_14c;\n  undefined1 local_148 [16];\n  undefined2 local_138;\n  undefined ***local_134;\n  int local_130;\n  undefined **local_12c [4];\n  undefined2 local_11c;\n  undefined1 local_110 [28];\n  undefined1 local_f4 [60];\n  int aiStack_b8 [5];\n  undefined **local_a4 [5];\n  byte local_90;\n  undefined4 local_34;\n  undefined2 local_30;\n  undefined4 local_2c;\n  undefined4 local_28;\n  undefined4 local_24;\n  undefined4 local_20;\n  \n  bVar25 = 0;\n  local_1c4 = &__DT_PLTGOT;\n  if (*(char *)(param_1 + 0x3469) == '\0') {\n    if (*(char *)(param_1 + 0x34e5) != '\0') goto LAB_000e79ea;\n    if (*(char *)(param_1 + 0x3561) != '\0') {\n      bVar24 = false;\n      goto LAB_000e79f9;\n    }\n    bVar24 = false;\n    if (*(char *)(param_1 + 0x7a9) != '\0') goto LAB_000e7a0c;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x34e5) = 1;\nLAB_000e79ea:\n    bVar24 = true;\n    *(undefined1 *)(param_1 + 0x3561) = 1;\nLAB_000e79f9:\n    *(undefined1 *)(param_1 + 0x35dd) = 1;\n    if (*(char *)(param_1 + 0x7a9) != '\0') {\nLAB_000e7a0c:\n      *(undefined1 *)(param_1 + 0x1a25) = 1;\n    }\n    if (((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&\n       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)) {\n      local_1c4 = &__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n      FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);\n    }\n  }\n  if (*(char *)(param_1 + 0xbcd) != '\0') {\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }\n  if (*(char *)(param_1 + 0xc49) != '\0') {\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }\n  if (*(char *)(param_1 + 0xb50) == '\0') {\n    local_1cc = (double)CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d));\n    *(byte *)(param_1 + 0xb51) = *(byte *)(param_1 + 0x318d) ^ 1;\n  }\n  bVar24 = *(char *)(param_1 + 0x4f31) == '\0';\n  if (bVar24) {\n    bVar24 = *(char *)(param_1 + 0x5545) == '\0';\n    if (!bVar24) {\n      *(undefined4 *)(param_1 + 0x5930) = 2;\n    }\n  }\n  else {\n    *(undefined4 *)(param_1 + 0x5930) = 1;\n  }\n  bVar22 = false;\n  iVar14 = 5;\n  local_1f0 = (byte *)0x28e9b2;\n  pbVar19 = *(byte **)(param_1 + 0x1bec);\n  pbVar20 = local_1f0;\n  do {\n    pbVar21 = pbVar20;\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    pbVar21 = pbVar20 + 1;\n    bVar22 = *pbVar19 < *pbVar20;\n    bVar24 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + 1;\n    pbVar20 = pbVar21;\n  } while (bVar24);\n  bVar23 = false;\n  bVar24 = (!bVar22 && !bVar24) == bVar22;\n  if (bVar24) {\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }\n  else {\n    iVar14 = 5;\n    pbVar19 = *(byte **)(param_1 + 0x1bec);\n    pbVar20 = (byte *)0x28e304;\n    do {\n      pbVar21 = pbVar20;\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      pbVar21 = pbVar20 + 1;\n      bVar23 = *pbVar19 < *pbVar20;\n      bVar24 = *pbVar19 == *pbVar20;\n      pbVar19 = pbVar19 + 1;\n      pbVar20 = pbVar21;\n    } while (bVar24);\n    *(uint *)(param_1 + 0x5934) = ((!bVar23 && !bVar24) == bVar23) + 1;\n  }\n  if (*(char *)(param_1 + 0xd4c) == '\0') {\n    if (*(char *)(param_1 + 0xd90) == '\0') {\n      local_1c4 = &__DT_PLTGOT;\n      pcVar12 = getenv("COLLECT_NO_DEMANGLE");\n      *(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0;\n    }\n    else {\n      *(undefined1 *)(param_1 + 0x5939) = 0;\n    }\n  }\n  else {\n    pcVar12 = *(char **)(param_1 + 0xd50);\n    *(undefined1 *)(param_1 + 0x5939) = 1;\n    local_1c4 = &__DT_PLTGOT;\n    if (*pcVar12 != '\0') {\n      iVar14 = FUN_001ce8a0(pcVar12);\n      if (iVar14 == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }\n      FUN_001ce850(iVar14);\n    }\n  }\n  ppuVar4 = local_1c4;\n  bVar24 = false;\n  bVar22 = *(char *)(param_1 + 0x2870) == '\0';\n  if (!bVar22) {\n    pbVar19 = *(byte **)(param_1 + 0x2874);\n    iVar14 = 6;\n    pbVar20 = pbVar19;\n    pbVar21 = (byte *)((int)local_1c4 + -0xeb29e);\n    do {\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar22 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n      pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n    } while (bVar22);\n    bVar23 = false;\n    bVar24 = (!bVar24 && !bVar22) == bVar24;\n    if (bVar24) {\n      *(undefined4 *)(param_1 + 0x5a88) = 0;\n    }\n    else {\n      iVar14 = 8;\n      pbVar20 = pbVar19;\n      pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar24 = (!bVar23 && !bVar24) == bVar23;\n      if (bVar24) {\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }\n      else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }\n    }\n  }\n  if ((*(char *)(param_1 + 0x2401) != '\0') && (*(char *)(param_1 + 0x247c) == '\0')) {\n    *(undefined1 *)(param_1 + 0x247c) = 1;\n    *(undefined ***)(param_1 + 0x2480) = local_1c4 + -0x4062a;\n  }\n  if ((*(char *)(param_1 + 0x24c1) != '\0') || (*(char *)(param_1 + 0x253d) != '\0')) {\n    *(undefined1 *)(param_1 + 0x5938) = 1;\n  }\n  iVar14 = *(int *)(param_1 + 0x3de8);\n  if (0 < iVar14) {\n    if (*(int *)(param_1 + 0x3e2c) == 0) {\n      *(int *)(param_1 + 0x3e2c) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3e70) == 0) {\n      *(int *)(param_1 + 0x3e70) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3eb4) == 0) {\n      *(int *)(param_1 + 0x3eb4) = iVar14;\n    }\n  }\n  local_1d4 = &local_1bc;\n  local_1b4[0] = 0;\n  local_1ec = local_1b4;\n  local_1b8 = 0;\n  local_1bc = local_1ec;\n  if (*(char *)(param_1 + 0x4ca8) == '\0') {\n    if (*(char *)(param_1 + 0x2729) == '\0') {\n      local_1dc = local_12c;\n      local_1d0 = (undefined ***)&local_134;\n      local_134 = local_1dc;\n                    /* try { // try from 000e81b5 to 000e81b9 has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0);\n      local_1a4 = local_19c;\n                    /* try { // try from 000e81e2 to 000e81e6 has its CatchHandler @ 000e8ba5 */\n      FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_18c = 1;\n      if (local_1a0 == 0) {\n                    /* try { // try from 000e8607 to 000e860b has its CatchHandler @ 000e8b3e */\n        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      local_1d8 = param_1 + 0x2184;\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e8623 to 000e8627 has its CatchHandler @ 000e8b45 */\n        FUN_000eae90(local_1d8,piVar7,&local_1a4);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e823f to 000e8243 has its CatchHandler @ 000e8b45 */\n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_1a4 != local_19c) {\n        FUN_001e6db0(local_1a4);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    /* try { // try from 000e82c9 to 000e82cd has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0);\n      local_188 = local_180;\n                    /* try { // try from 000e82f6 to 000e82fa has its CatchHandler @ 000e8b7d */\n      FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_170 = 1;\n      if (local_184 == 0) {\n                    /* try { // try from 000e87a7 to 000e87ab has its CatchHandler @ 000e8b68 */\n        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e883b to 000e883f has its CatchHandler @ 000e8b6f */\n        FUN_000eae90(local_1d8,piVar7,&local_188);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e8345 to 000e8349 has its CatchHandler @ 000e8b6f */\n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_188 != local_180) {\n        FUN_001e6db0(local_188);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    /* try { // try from 000e83cf to 000e83d3 has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0);\n      local_16c = local_164;\n                    /* try { // try from 000e83fc to 000e8400 has its CatchHandler @ 000e8b76 */\n      FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_154 = 1;\n      if (local_168 == 0) {\n                    /* try { // try from 000e87cf to 000e87d3 has its CatchHandler @ 000e8b61 */\n        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e881b to 000e881f has its CatchHandler @ 000e8b4c */\n        FUN_000eae90(local_1d8,piVar7,&local_16c);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e844b to 000e844f has its CatchHandler @ 000e8b4c */\n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_16c != local_164) {\n        FUN_001e6db0(local_16c);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    /* try { // try from 000e84d5 to 000e84d9 has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0);\n      local_1e0 = local_148;\n      local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n      local_150 = local_1e0;\n                    /* try { // try from 000e850e to 000e8512 has its CatchHandler @ 000e8b1b */\n      FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_138 = 1;\n      if (local_14c == 0) {\n                    /* try { // try from 000e87fc to 000e8800 has its CatchHandler @ 000e8b5a */\n        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e8860 to 000e8864 has its CatchHandler @ 000e8b14 */\n        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e855d to 000e8561 has its CatchHandler @ 000e8b14 */\n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_150 != local_1e0) {\n        FUN_001e6db0(local_150);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      goto LAB_000e7f08;\n    }\n  }\n  else {\n    pcVar12 = *(char **)(param_1 + 0x4cac);\n    sVar9 = strlen(pcVar12);\n    ppuVar3 = local_1d4;\n                    /* try { // try from 000e7ede to 000e7f8e has its CatchHandler @ 000e8b37 */\n    FUN_001ef9f0(local_1d4,0,0,pcVar12,sVar9);\n    iVar14 = FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6);\n    if (iVar14 == 0) {\n      uVar6 = local_1b8;\n      if (2 < local_1b8) {\n        uVar6 = 2;\n      }\n                    /* try { // try from 000e877d to 000e8781 has its CatchHandler @ 000e8b37 */\n      FUN_001eebf0(local_1d4,0,uVar6);\n    }\nLAB_000e7f08:\n    uVar6 = 0;\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n    if (local_1b8 != 0) {\n      do {\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    /* WARNING: Subroutine does not return */\n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */\n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      } while( true );\n    }\n  }\n  ppuVar4 = local_1c4;\n  puVar17 = auStack_20c;\n  puVar18 = auStack_20c;\n  if (*(int *)(param_1 + 0x3288) != 0) {\n    local_1e8 = local_a4;\n    local_1d0 = (undefined ***)&local_134;\n    FUN_0022bca0(local_1e8);\n    local_1fc = ppuVar4 + -0xa14;\n    local_34 = 0;\n    local_2c = 0;\n    local_a4[0] = ppuVar4 + -0xa12;\n    local_30 = 0;\n    local_28 = 0;\n    local_1f4 = (undefined ***)ppuVar4[-0x9d9];\n    local_1f8 = ppuVar4[-0x9d8];\n    local_24 = 0;\n    local_20 = 0;\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n                    /* try { // try from 000e77b7 to 000e77bb has its CatchHandler @ 000e8b92 */\n    FUN_00211450((int)local_1f4[-3] + (int)&local_134,0);\n    local_200 = ppuVar4 + -0x9d6;\n    local_134 = (undefined ***)(ppuVar4 + -0x9d3);\n    local_a4[0] = ppuVar4 + -0x9ce;\n    local_1dc = local_12c;\n                    /* try { // try from 000e77e9 to 000e77ed has its CatchHandler @ 000e8b84 */\n    FUN_00213670(local_12c);\n                    /* try { // try from 000e77f7 to 000e77fb has its CatchHandler @ 000e8b29 */\n    FUN_00211450(local_1e8,local_12c);\n                    /* try { // try from 000e780b to 000e783a has its CatchHandler @ 000e8b30 */\n    iVar14 = FUN_00217950(local_12c,*(undefined4 *)(param_1 + 0x3288),8);\n    puVar15 = (undefined *)((int)local_1d0 + (int)local_134[-3]);\n    if (iVar14 == 0) {\n                    /* try { // try from 000e8751 to 000e8755 has its CatchHandler @ 000e8b30 */\n      FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4);\n    }\n    else {\n      FUN_00210c00(puVar15,0);\n    }\n    ppuVar4 = local_1c4;\n    if ((local_90 & 5) != 0) {\n      piVar7 = __errno_location();\n      pcVar12 = strerror(*piVar7);\n      uVar11 = *(undefined4 *)(param_1 + 0x3288);\n      uVar13 = gettext(local_1c4 + -0x3f6cb);\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8a0c to 000e8a10 has its CatchHandler @ 000e8b30 */\n      FUN_00065450(uVar13,uVar11,pcVar12);\n    }\n    local_1e0 = local_148;\n    local_148[0] = 0;\n    local_14c = 0;\n    piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n    local_150 = local_1e0;\n    if (piVar7 == (int *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8af0 to 000e8af4 has its CatchHandler @ 000e8b8b */\n      FUN_0022c630();\n    }\n    if ((char)piVar7[7] == '\0') {\n                    /* try { // try from 000e80ec to 000e8113 has its CatchHandler @ 000e8b8b */\n      FUN_0022ccc0(piVar7);\n      iVar14 = 10;\n      if (*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0) {\n        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);\n        iVar14 = (int)cVar5;\n      }\n    }\n    else {\n      iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n    }\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n                    /* try { // try from 000e78b1 to 000e78f6 has its CatchHandler @ 000e8b8b */\n    FUN_001e7cb0(local_1d0,&local_150,iVar14);\n    local_1d4 = (undefined1 **)(param_1 + 0x5a3c);\n    local_1e4 = local_1c0;\n    while ((local_90 & 5) == 0) {\n      if ((local_14c != 0) && (local_150[local_14c + -1] == '\r')) {\n        *(undefined4 *)(puVar17 + -8) = 0;\n        *(int *)(puVar17 + -0xc) = local_14c + -1;\n        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;\n                    /* try { // try from 000e7e32 to 000e7e36 has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;\n        FUN_001ef780();\n      }\n      *(undefined4 *)(puVar17 + -8) = 0xc70f6907;\n      *(int *)(puVar17 + -0xc) = local_14c;\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe793a;\n      uVar6 = FUN_001e52b0();\n      local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40);\n      *(uint *)(puVar17 + -0x14) = uVar6;\n      *(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_;\n      *(uint *)(puVar17 + -0x1c) = local_1d8;\n      *(undefined1 ***)(puVar17 + -0x20) = local_1d4;\n      *(undefined4 *)(puVar17 + -0x24) = 0xe7960;\n      piVar7 = (int *)FUN_000eadf0();\n      if ((piVar7 == (int *)0x0) || (*piVar7 == 0)) {\n        *(undefined4 *)(puVar17 + -0x10) = 0x20;\n                    /* try { // try from 000e7a7b to 000e7a7f has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;\n        puVar8 = (undefined4 *)FUN_001e5200();\n        *puVar8 = 0;\n        puVar8[1] = puVar8 + 3;\n        *(undefined4 *)(puVar17 + -4) = 0;\n        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;\n        *(undefined1 **)(puVar17 + -0xc) = local_150;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;\n                    /* try { // try from 000e7aa7 to 000e7aab has its CatchHandler @ 000e8b99 */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;\n        FUN_000513a0();\n        *(undefined4 *)(puVar17 + -0xc) = 1;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8;\n        *(uint *)(puVar17 + -0x14) = uVar6;\n        *(uint *)(puVar17 + -0x18) = local_1d8;\n        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;\n        *(undefined1 **)(puVar17 + -0x20) = local_1e4;\n                    /* try { // try from 000e7ac4 to 000e7ac8 has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;\n        FUN_000ec3b0();\n        puVar17 = puVar17 + -4;\n      }\n      ppuVar4 = local_1c4;\n      piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n      if (piVar7 == (int *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88aa to 000e88ae has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -4) = 0xe88af;\n        FUN_0022c630();\n      }\n      if ((char)piVar7[7] == '\0') {\n        *(int **)(puVar17 + -0x10) = piVar7;\n                    /* try { // try from 000e79a3 to 000e79ca has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;\n        FUN_0022ccc0();\n        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);\n        iVar14 = 10;\n        if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }\n      }\n      else {\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }\n      *(int *)(puVar17 + -8) = iVar14;\n      *(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_;\n      *(undefined ****)(puVar17 + -0x10) = local_1d0;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe78f7;\n      FUN_001e7cb0();\n    }\n    if (local_150 != local_1e0) {\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe7aef;\n      FUN_001e6db0();\n    }\n    ppuVar4 = local_1c4;\n    *(undefined ****)(puVar17 + -0x10) = local_1dc;\n    local_134 = (undefined ***)(local_200 + 3);\n    local_a4[0] = local_200 + 8;\n    local_12c[0] = local_1c4 + -0x9f2;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b2f;\n    FUN_00216e90();\n    *(undefined1 **)(puVar17 + -0x10) = local_f4;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b3d;\n    FUN_001e75f0();\n    local_12c[0] = ppuVar4 + -0xbd7;\n    *(undefined1 **)(puVar17 + -0x10) = local_110;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b5a;\n    FUN_001e9510();\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n    local_a4[0] = local_1fc + 2;\n    *(undefined ****)(puVar17 + -0x10) = local_1e8;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b9b;\n    FUN_0022c040();\n    puVar18 = puVar17;\n  }\n  if ((*(char *)(param_1 + 0x72d) != '\0') && (*(char *)(param_1 + 0x42e0) == '\0')) {\n    *(int *)(param_1 + 0x42e4) = (int)local_1c4 + -0x10e8db;\n  }\n  if ((*(char *)(param_1 + 0x1a25) != '\0') && (*(char *)(param_1 + 0x1fc) == '\0')) {\n    *(undefined1 *)(param_1 + 0x1fd) = 1;\n  }\n  *(int *)(puVar18 + -0x10) = param_1;\n                    /* try { // try from 000e7bea to 000e7e1a has its CatchHandler @ 000e8b37 */\n  *(undefined4 *)(puVar18 + -0x14) = 0xe7bef;\n  FUN_000ddde0();\n  if (*(char *)(param_1 + 0x1a25) == '\0') {\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      if (*(char *)(param_1 + 0x5938) != '\0') {\n        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8b0f to 000e8b13 has its CatchHandler @ 000e8b37 */\n        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;\n        FUN_00065450();\n      }\n      if (*(char *)(param_1 + 0x318d) != '\0') {\n        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;\n        FUN_00065450();\n      }\n    }\n    if (*(int *)(param_1 + 0x1478) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe898c;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8994;\n      FUN_00065450();\n    }\n    if (*(int *)(param_1 + 0x1428) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c0;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e89c3 to 000e89c7 has its CatchHandler @ 000e8b37 */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c8;\n      FUN_00065450();\n    }\n    if ((*(char *)(param_1 + 0x318d) != '\0') && (*(int *)(param_1 + 0x3288) != 0)) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe7e13;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b;\n      FUN_00065450();\n    }\n  }\n  else {\n    if (*(char *)(param_1 + 0x5938) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8aea;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe892f;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8937;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x318d) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe894e;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8956;\n      FUN_00065450();\n    }\n  }\n  *(undefined4 *)(puVar18 + -0x10) = *(undefined4 *)(param_1 + 0x27ec);\n  *(undefined4 *)(puVar18 + -0x14) = 0xe7c40;\n  iVar14 = FUN_000dd760();\n  if ((iVar14 != 0) &&\n     (((*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||\n      (*(char *)(param_1 + 0x318d) != '\0')))) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f678;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8910;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8918;\n    FUN_00065450();\n  }\n  if ((*(char *)(param_1 + 0x1ae4) != '\0') &&\n     ((dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1)))) {\n    local_1cc = dVar1;\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f668;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe88cc;\n    uVar11 = gettext();\n    dVar1 = local_1cc;\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(double *)(puVar18 + -0xc) = dVar1;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88d9 to 000e8993 has its CatchHandler @ 000e8b37 */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe88de;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x5a1c) == '\0') {\n    if (*(int *)(param_1 + 0x5a10) == 0) goto LAB_000e7d53;\n  }\n  else if (*(int *)(param_1 + 0x5a10) == 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a66;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a6e;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x318d) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f63c;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a85;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a8d;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x3095) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f630;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aa4;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aac;\n    FUN_00065450();\n  }\n  if (*(int *)(param_1 + 0x593c) != 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f621;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8ac3;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8acb;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x56b9) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f614;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a28;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8a2b to 000e8ae9 has its CatchHandler @ 000e8b37 */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a30;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x2931) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f607;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a47;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a4f;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x18b1) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5fb;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe871f;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8727;\n    FUN_000654e0();\n    *(undefined1 *)(param_1 + 0x18b1) = 0;\n  }\n  bVar22 = *(int *)(param_1 + 0x5934) == 0;\n  bVar24 = !bVar22;\n  if (bVar24) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5ef;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86e7;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86ef;\n    FUN_000654e0();\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }\n  bVar24 = bVar24 && (undefined1 *)0xffffffef < puVar18 + -0x10;\n  bVar22 = bVar22 || puVar18 == (undefined1 *)0x0;\n  iVar14 = 5;\n  pbVar19 = *(byte **)(param_1 + 0x99c);\n  pbVar20 = local_1f0;\n  do {\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    bVar24 = *pbVar19 < *pbVar20;\n    bVar22 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n    pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n  } while (bVar22);\n  if ((!bVar24 && !bVar22) != bVar24) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5e5;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86af;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* try { // try from 000e86b2 to 000e8726 has its CatchHandler @ 000e8b37 */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86b7;\n    FUN_000654e0();\n    *(byte **)(param_1 + 0x99c) = local_1f0;\n  }\nLAB_000e7d53:\n  if (*(char *)(param_1 + 0x3344) != '\0') {\n    *(undefined1 *)(param_1 + 0x32c9) = 1;\n  }\n  if (local_1bc != local_1ec) {\n    *(undefined1 **)(puVar18 + -0x10) = local_1bc;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe7d83;\n    FUN_001e6db0();\n  }\n  return;\n}\n\n" comment (function_definition "void FUN_000e74a0(int param_1)\n\n{\n  double dVar1;\n  undefined **ppuVar2;\n  undefined1 **ppuVar3;\n  undefined **ppuVar4;\n  char cVar5;\n  uint uVar6;\n  int *piVar7;\n  undefined4 *puVar8;\n  size_t sVar9;\n  uint uVar10;\n  undefined4 uVar11;\n  char *pcVar12;\n  undefined4 uVar13;\n  int iVar14;\n  undefined *puVar15;\n  uint uVar16;\n  undefined1 *puVar17;\n  undefined1 *puVar18;\n  byte *pbVar19;\n  byte *pbVar20;\n  byte *pbVar21;\n  bool bVar22;\n  bool bVar23;\n  bool bVar24;\n  byte bVar25;\n  undefined4 uStackY_230;\n  undefined1 auStack_20c [12];\n  undefined **local_200;\n  undefined **local_1fc;\n  undefined *local_1f8;\n  undefined ***local_1f4;\n  byte *local_1f0;\n  undefined1 *local_1ec;\n  undefined ***local_1e8;\n  undefined1 *local_1e4;\n  undefined1 *local_1e0;\n  undefined ***local_1dc;\n  uint local_1d8;\n  undefined1 **local_1d4;\n  undefined ***local_1d0;\n  double local_1cc;\n  undefined **local_1c4;\n  undefined1 local_1c0 [4];\n  undefined1 *local_1bc;\n  uint local_1b8;\n  undefined1 local_1b4 [16];\n  undefined1 *local_1a4;\n  int local_1a0;\n  undefined1 local_19c [16];\n  undefined2 local_18c;\n  undefined1 *local_188;\n  int local_184;\n  undefined1 local_180 [16];\n  undefined2 local_170;\n  undefined1 *local_16c;\n  int local_168;\n  undefined1 local_164 [16];\n  undefined2 local_154;\n  undefined1 *local_150;\n  int local_14c;\n  undefined1 local_148 [16];\n  undefined2 local_138;\n  undefined ***local_134;\n  int local_130;\n  undefined **local_12c [4];\n  undefined2 local_11c;\n  undefined1 local_110 [28];\n  undefined1 local_f4 [60];\n  int aiStack_b8 [5];\n  undefined **local_a4 [5];\n  byte local_90;\n  undefined4 local_34;\n  undefined2 local_30;\n  undefined4 local_2c;\n  undefined4 local_28;\n  undefined4 local_24;\n  undefined4 local_20;\n  \n  bVar25 = 0;\n  local_1c4 = &__DT_PLTGOT;\n  if (*(char *)(param_1 + 0x3469) == '\0') {\n    if (*(char *)(param_1 + 0x34e5) != '\0') goto LAB_000e79ea;\n    if (*(char *)(param_1 + 0x3561) != '\0') {\n      bVar24 = false;\n      goto LAB_000e79f9;\n    }\n    bVar24 = false;\n    if (*(char *)(param_1 + 0x7a9) != '\0') goto LAB_000e7a0c;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x34e5) = 1;\nLAB_000e79ea:\n    bVar24 = true;\n    *(undefined1 *)(param_1 + 0x3561) = 1;\nLAB_000e79f9:\n    *(undefined1 *)(param_1 + 0x35dd) = 1;\n    if (*(char *)(param_1 + 0x7a9) != '\0') {\nLAB_000e7a0c:\n      *(undefined1 *)(param_1 + 0x1a25) = 1;\n    }\n    if (((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&\n       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)) {\n      local_1c4 = &__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n      FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);\n    }\n  }\n  if (*(char *)(param_1 + 0xbcd) != '\0') {\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }\n  if (*(char *)(param_1 + 0xc49) != '\0') {\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }\n  if (*(char *)(param_1 + 0xb50) == '\0') {\n    local_1cc = (double)CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d));\n    *(byte *)(param_1 + 0xb51) = *(byte *)(param_1 + 0x318d) ^ 1;\n  }\n  bVar24 = *(char *)(param_1 + 0x4f31) == '\0';\n  if (bVar24) {\n    bVar24 = *(char *)(param_1 + 0x5545) == '\0';\n    if (!bVar24) {\n      *(undefined4 *)(param_1 + 0x5930) = 2;\n    }\n  }\n  else {\n    *(undefined4 *)(param_1 + 0x5930) = 1;\n  }\n  bVar22 = false;\n  iVar14 = 5;\n  local_1f0 = (byte *)0x28e9b2;\n  pbVar19 = *(byte **)(param_1 + 0x1bec);\n  pbVar20 = local_1f0;\n  do {\n    pbVar21 = pbVar20;\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    pbVar21 = pbVar20 + 1;\n    bVar22 = *pbVar19 < *pbVar20;\n    bVar24 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + 1;\n    pbVar20 = pbVar21;\n  } while (bVar24);\n  bVar23 = false;\n  bVar24 = (!bVar22 && !bVar24) == bVar22;\n  if (bVar24) {\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }\n  else {\n    iVar14 = 5;\n    pbVar19 = *(byte **)(param_1 + 0x1bec);\n    pbVar20 = (byte *)0x28e304;\n    do {\n      pbVar21 = pbVar20;\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      pbVar21 = pbVar20 + 1;\n      bVar23 = *pbVar19 < *pbVar20;\n      bVar24 = *pbVar19 == *pbVar20;\n      pbVar19 = pbVar19 + 1;\n      pbVar20 = pbVar21;\n    } while (bVar24);\n    *(uint *)(param_1 + 0x5934) = ((!bVar23 && !bVar24) == bVar23) + 1;\n  }\n  if (*(char *)(param_1 + 0xd4c) == '\0') {\n    if (*(char *)(param_1 + 0xd90) == '\0') {\n      local_1c4 = &__DT_PLTGOT;\n      pcVar12 = getenv("COLLECT_NO_DEMANGLE");\n      *(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0;\n    }\n    else {\n      *(undefined1 *)(param_1 + 0x5939) = 0;\n    }\n  }\n  else {\n    pcVar12 = *(char **)(param_1 + 0xd50);\n    *(undefined1 *)(param_1 + 0x5939) = 1;\n    local_1c4 = &__DT_PLTGOT;\n    if (*pcVar12 != '\0') {\n      iVar14 = FUN_001ce8a0(pcVar12);\n      if (iVar14 == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }\n      FUN_001ce850(iVar14);\n    }\n  }\n  ppuVar4 = local_1c4;\n  bVar24 = false;\n  bVar22 = *(char *)(param_1 + 0x2870) == '\0';\n  if (!bVar22) {\n    pbVar19 = *(byte **)(param_1 + 0x2874);\n    iVar14 = 6;\n    pbVar20 = pbVar19;\n    pbVar21 = (byte *)((int)local_1c4 + -0xeb29e);\n    do {\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar22 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n      pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n    } while (bVar22);\n    bVar23 = false;\n    bVar24 = (!bVar24 && !bVar22) == bVar24;\n    if (bVar24) {\n      *(undefined4 *)(param_1 + 0x5a88) = 0;\n    }\n    else {\n      iVar14 = 8;\n      pbVar20 = pbVar19;\n      pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar24 = (!bVar23 && !bVar24) == bVar23;\n      if (bVar24) {\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }\n      else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }\n    }\n  }\n  if ((*(char *)(param_1 + 0x2401) != '\0') && (*(char *)(param_1 + 0x247c) == '\0')) {\n    *(undefined1 *)(param_1 + 0x247c) = 1;\n    *(undefined ***)(param_1 + 0x2480) = local_1c4 + -0x4062a;\n  }\n  if ((*(char *)(param_1 + 0x24c1) != '\0') || (*(char *)(param_1 + 0x253d) != '\0')) {\n    *(undefined1 *)(param_1 + 0x5938) = 1;\n  }\n  iVar14 = *(int *)(param_1 + 0x3de8);\n  if (0 < iVar14) {\n    if (*(int *)(param_1 + 0x3e2c) == 0) {\n      *(int *)(param_1 + 0x3e2c) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3e70) == 0) {\n      *(int *)(param_1 + 0x3e70) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3eb4) == 0) {\n      *(int *)(param_1 + 0x3eb4) = iVar14;\n    }\n  }\n  local_1d4 = &local_1bc;\n  local_1b4[0] = 0;\n  local_1ec = local_1b4;\n  local_1b8 = 0;\n  local_1bc = local_1ec;\n  if (*(char *)(param_1 + 0x4ca8) == '\0') {\n    if (*(char *)(param_1 + 0x2729) == '\0') {\n      local_1dc = local_12c;\n      local_1d0 = (undefined ***)&local_134;\n      local_134 = local_1dc;\n                    /* try { // try from 000e81b5 to 000e81b9 has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0);\n      local_1a4 = local_19c;\n                    /* try { // try from 000e81e2 to 000e81e6 has its CatchHandler @ 000e8ba5 */\n      FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_18c = 1;\n      if (local_1a0 == 0) {\n                    /* try { // try from 000e8607 to 000e860b has its CatchHandler @ 000e8b3e */\n        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      local_1d8 = param_1 + 0x2184;\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e8623 to 000e8627 has its CatchHandler @ 000e8b45 */\n        FUN_000eae90(local_1d8,piVar7,&local_1a4);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e823f to 000e8243 has its CatchHandler @ 000e8b45 */\n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_1a4 != local_19c) {\n        FUN_001e6db0(local_1a4);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    /* try { // try from 000e82c9 to 000e82cd has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0);\n      local_188 = local_180;\n                    /* try { // try from 000e82f6 to 000e82fa has its CatchHandler @ 000e8b7d */\n      FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_170 = 1;\n      if (local_184 == 0) {\n                    /* try { // try from 000e87a7 to 000e87ab has its CatchHandler @ 000e8b68 */\n        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e883b to 000e883f has its CatchHandler @ 000e8b6f */\n        FUN_000eae90(local_1d8,piVar7,&local_188);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e8345 to 000e8349 has its CatchHandler @ 000e8b6f */\n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_188 != local_180) {\n        FUN_001e6db0(local_188);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    /* try { // try from 000e83cf to 000e83d3 has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0);\n      local_16c = local_164;\n                    /* try { // try from 000e83fc to 000e8400 has its CatchHandler @ 000e8b76 */\n      FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_154 = 1;\n      if (local_168 == 0) {\n                    /* try { // try from 000e87cf to 000e87d3 has its CatchHandler @ 000e8b61 */\n        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e881b to 000e881f has its CatchHandler @ 000e8b4c */\n        FUN_000eae90(local_1d8,piVar7,&local_16c);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e844b to 000e844f has its CatchHandler @ 000e8b4c */\n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_16c != local_164) {\n        FUN_001e6db0(local_16c);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    /* try { // try from 000e84d5 to 000e84d9 has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0);\n      local_1e0 = local_148;\n      local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n      local_150 = local_1e0;\n                    /* try { // try from 000e850e to 000e8512 has its CatchHandler @ 000e8b1b */\n      FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_138 = 1;\n      if (local_14c == 0) {\n                    /* try { // try from 000e87fc to 000e8800 has its CatchHandler @ 000e8b5a */\n        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e8860 to 000e8864 has its CatchHandler @ 000e8b14 */\n        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e855d to 000e8561 has its CatchHandler @ 000e8b14 */\n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_150 != local_1e0) {\n        FUN_001e6db0(local_150);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      goto LAB_000e7f08;\n    }\n  }\n  else {\n    pcVar12 = *(char **)(param_1 + 0x4cac);\n    sVar9 = strlen(pcVar12);\n    ppuVar3 = local_1d4;\n                    /* try { // try from 000e7ede to 000e7f8e has its CatchHandler @ 000e8b37 */\n    FUN_001ef9f0(local_1d4,0,0,pcVar12,sVar9);\n    iVar14 = FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6);\n    if (iVar14 == 0) {\n      uVar6 = local_1b8;\n      if (2 < local_1b8) {\n        uVar6 = 2;\n      }\n                    /* try { // try from 000e877d to 000e8781 has its CatchHandler @ 000e8b37 */\n      FUN_001eebf0(local_1d4,0,uVar6);\n    }\nLAB_000e7f08:\n    uVar6 = 0;\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n    if (local_1b8 != 0) {\n      do {\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    /* WARNING: Subroutine does not return */\n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */\n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      } while( true );\n    }\n  }\n  ppuVar4 = local_1c4;\n  puVar17 = auStack_20c;\n  puVar18 = auStack_20c;\n  if (*(int *)(param_1 + 0x3288) != 0) {\n    local_1e8 = local_a4;\n    local_1d0 = (undefined ***)&local_134;\n    FUN_0022bca0(local_1e8);\n    local_1fc = ppuVar4 + -0xa14;\n    local_34 = 0;\n    local_2c = 0;\n    local_a4[0] = ppuVar4 + -0xa12;\n    local_30 = 0;\n    local_28 = 0;\n    local_1f4 = (undefined ***)ppuVar4[-0x9d9];\n    local_1f8 = ppuVar4[-0x9d8];\n    local_24 = 0;\n    local_20 = 0;\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n                    /* try { // try from 000e77b7 to 000e77bb has its CatchHandler @ 000e8b92 */\n    FUN_00211450((int)local_1f4[-3] + (int)&local_134,0);\n    local_200 = ppuVar4 + -0x9d6;\n    local_134 = (undefined ***)(ppuVar4 + -0x9d3);\n    local_a4[0] = ppuVar4 + -0x9ce;\n    local_1dc = local_12c;\n                    /* try { // try from 000e77e9 to 000e77ed has its CatchHandler @ 000e8b84 */\n    FUN_00213670(local_12c);\n                    /* try { // try from 000e77f7 to 000e77fb has its CatchHandler @ 000e8b29 */\n    FUN_00211450(local_1e8,local_12c);\n                    /* try { // try from 000e780b to 000e783a has its CatchHandler @ 000e8b30 */\n    iVar14 = FUN_00217950(local_12c,*(undefined4 *)(param_1 + 0x3288),8);\n    puVar15 = (undefined *)((int)local_1d0 + (int)local_134[-3]);\n    if (iVar14 == 0) {\n                    /* try { // try from 000e8751 to 000e8755 has its CatchHandler @ 000e8b30 */\n      FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4);\n    }\n    else {\n      FUN_00210c00(puVar15,0);\n    }\n    ppuVar4 = local_1c4;\n    if ((local_90 & 5) != 0) {\n      piVar7 = __errno_location();\n      pcVar12 = strerror(*piVar7);\n      uVar11 = *(undefined4 *)(param_1 + 0x3288);\n      uVar13 = gettext(local_1c4 + -0x3f6cb);\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8a0c to 000e8a10 has its CatchHandler @ 000e8b30 */\n      FUN_00065450(uVar13,uVar11,pcVar12);\n    }\n    local_1e0 = local_148;\n    local_148[0] = 0;\n    local_14c = 0;\n    piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n    local_150 = local_1e0;\n    if (piVar7 == (int *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8af0 to 000e8af4 has its CatchHandler @ 000e8b8b */\n      FUN_0022c630();\n    }\n    if ((char)piVar7[7] == '\0') {\n                    /* try { // try from 000e80ec to 000e8113 has its CatchHandler @ 000e8b8b */\n      FUN_0022ccc0(piVar7);\n      iVar14 = 10;\n      if (*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0) {\n        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);\n        iVar14 = (int)cVar5;\n      }\n    }\n    else {\n      iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n    }\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n                    /* try { // try from 000e78b1 to 000e78f6 has its CatchHandler @ 000e8b8b */\n    FUN_001e7cb0(local_1d0,&local_150,iVar14);\n    local_1d4 = (undefined1 **)(param_1 + 0x5a3c);\n    local_1e4 = local_1c0;\n    while ((local_90 & 5) == 0) {\n      if ((local_14c != 0) && (local_150[local_14c + -1] == '\r')) {\n        *(undefined4 *)(puVar17 + -8) = 0;\n        *(int *)(puVar17 + -0xc) = local_14c + -1;\n        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;\n                    /* try { // try from 000e7e32 to 000e7e36 has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;\n        FUN_001ef780();\n      }\n      *(undefined4 *)(puVar17 + -8) = 0xc70f6907;\n      *(int *)(puVar17 + -0xc) = local_14c;\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe793a;\n      uVar6 = FUN_001e52b0();\n      local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40);\n      *(uint *)(puVar17 + -0x14) = uVar6;\n      *(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_;\n      *(uint *)(puVar17 + -0x1c) = local_1d8;\n      *(undefined1 ***)(puVar17 + -0x20) = local_1d4;\n      *(undefined4 *)(puVar17 + -0x24) = 0xe7960;\n      piVar7 = (int *)FUN_000eadf0();\n      if ((piVar7 == (int *)0x0) || (*piVar7 == 0)) {\n        *(undefined4 *)(puVar17 + -0x10) = 0x20;\n                    /* try { // try from 000e7a7b to 000e7a7f has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;\n        puVar8 = (undefined4 *)FUN_001e5200();\n        *puVar8 = 0;\n        puVar8[1] = puVar8 + 3;\n        *(undefined4 *)(puVar17 + -4) = 0;\n        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;\n        *(undefined1 **)(puVar17 + -0xc) = local_150;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;\n                    /* try { // try from 000e7aa7 to 000e7aab has its CatchHandler @ 000e8b99 */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;\n        FUN_000513a0();\n        *(undefined4 *)(puVar17 + -0xc) = 1;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8;\n        *(uint *)(puVar17 + -0x14) = uVar6;\n        *(uint *)(puVar17 + -0x18) = local_1d8;\n        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;\n        *(undefined1 **)(puVar17 + -0x20) = local_1e4;\n                    /* try { // try from 000e7ac4 to 000e7ac8 has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;\n        FUN_000ec3b0();\n        puVar17 = puVar17 + -4;\n      }\n      ppuVar4 = local_1c4;\n      piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n      if (piVar7 == (int *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88aa to 000e88ae has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -4) = 0xe88af;\n        FUN_0022c630();\n      }\n      if ((char)piVar7[7] == '\0') {\n        *(int **)(puVar17 + -0x10) = piVar7;\n                    /* try { // try from 000e79a3 to 000e79ca has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;\n        FUN_0022ccc0();\n        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);\n        iVar14 = 10;\n        if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }\n      }\n      else {\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }\n      *(int *)(puVar17 + -8) = iVar14;\n      *(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_;\n      *(undefined ****)(puVar17 + -0x10) = local_1d0;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe78f7;\n      FUN_001e7cb0();\n    }\n    if (local_150 != local_1e0) {\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe7aef;\n      FUN_001e6db0();\n    }\n    ppuVar4 = local_1c4;\n    *(undefined ****)(puVar17 + -0x10) = local_1dc;\n    local_134 = (undefined ***)(local_200 + 3);\n    local_a4[0] = local_200 + 8;\n    local_12c[0] = local_1c4 + -0x9f2;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b2f;\n    FUN_00216e90();\n    *(undefined1 **)(puVar17 + -0x10) = local_f4;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b3d;\n    FUN_001e75f0();\n    local_12c[0] = ppuVar4 + -0xbd7;\n    *(undefined1 **)(puVar17 + -0x10) = local_110;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b5a;\n    FUN_001e9510();\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n    local_a4[0] = local_1fc + 2;\n    *(undefined ****)(puVar17 + -0x10) = local_1e8;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b9b;\n    FUN_0022c040();\n    puVar18 = puVar17;\n  }\n  if ((*(char *)(param_1 + 0x72d) != '\0') && (*(char *)(param_1 + 0x42e0) == '\0')) {\n    *(int *)(param_1 + 0x42e4) = (int)local_1c4 + -0x10e8db;\n  }\n  if ((*(char *)(param_1 + 0x1a25) != '\0') && (*(char *)(param_1 + 0x1fc) == '\0')) {\n    *(undefined1 *)(param_1 + 0x1fd) = 1;\n  }\n  *(int *)(puVar18 + -0x10) = param_1;\n                    /* try { // try from 000e7bea to 000e7e1a has its CatchHandler @ 000e8b37 */\n  *(undefined4 *)(puVar18 + -0x14) = 0xe7bef;\n  FUN_000ddde0();\n  if (*(char *)(param_1 + 0x1a25) == '\0') {\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      if (*(char *)(param_1 + 0x5938) != '\0') {\n        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8b0f to 000e8b13 has its CatchHandler @ 000e8b37 */\n        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;\n        FUN_00065450();\n      }\n      if (*(char *)(param_1 + 0x318d) != '\0') {\n        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;\n        FUN_00065450();\n      }\n    }\n    if (*(int *)(param_1 + 0x1478) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe898c;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8994;\n      FUN_00065450();\n    }\n    if (*(int *)(param_1 + 0x1428) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c0;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e89c3 to 000e89c7 has its CatchHandler @ 000e8b37 */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c8;\n      FUN_00065450();\n    }\n    if ((*(char *)(param_1 + 0x318d) != '\0') && (*(int *)(param_1 + 0x3288) != 0)) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe7e13;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b;\n      FUN_00065450();\n    }\n  }\n  else {\n    if (*(char *)(param_1 + 0x5938) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8aea;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe892f;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8937;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x318d) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe894e;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8956;\n      FUN_00065450();\n    }\n  }\n  *(undefined4 *)(puVar18 + -0x10) = *(undefined4 *)(param_1 + 0x27ec);\n  *(undefined4 *)(puVar18 + -0x14) = 0xe7c40;\n  iVar14 = FUN_000dd760();\n  if ((iVar14 != 0) &&\n     (((*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||\n      (*(char *)(param_1 + 0x318d) != '\0')))) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f678;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8910;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8918;\n    FUN_00065450();\n  }\n  if ((*(char *)(param_1 + 0x1ae4) != '\0') &&\n     ((dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1)))) {\n    local_1cc = dVar1;\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f668;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe88cc;\n    uVar11 = gettext();\n    dVar1 = local_1cc;\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(double *)(puVar18 + -0xc) = dVar1;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88d9 to 000e8993 has its CatchHandler @ 000e8b37 */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe88de;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x5a1c) == '\0') {\n    if (*(int *)(param_1 + 0x5a10) == 0) goto LAB_000e7d53;\n  }\n  else if (*(int *)(param_1 + 0x5a10) == 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a66;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a6e;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x318d) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f63c;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a85;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a8d;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x3095) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f630;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aa4;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aac;\n    FUN_00065450();\n  }\n  if (*(int *)(param_1 + 0x593c) != 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f621;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8ac3;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8acb;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x56b9) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f614;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a28;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8a2b to 000e8ae9 has its CatchHandler @ 000e8b37 */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a30;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x2931) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f607;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a47;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a4f;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x18b1) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5fb;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe871f;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8727;\n    FUN_000654e0();\n    *(undefined1 *)(param_1 + 0x18b1) = 0;\n  }\n  bVar22 = *(int *)(param_1 + 0x5934) == 0;\n  bVar24 = !bVar22;\n  if (bVar24) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5ef;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86e7;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86ef;\n    FUN_000654e0();\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }\n  bVar24 = bVar24 && (undefined1 *)0xffffffef < puVar18 + -0x10;\n  bVar22 = bVar22 || puVar18 == (undefined1 *)0x0;\n  iVar14 = 5;\n  pbVar19 = *(byte **)(param_1 + 0x99c);\n  pbVar20 = local_1f0;\n  do {\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    bVar24 = *pbVar19 < *pbVar20;\n    bVar22 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n    pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n  } while (bVar22);\n  if ((!bVar24 && !bVar22) != bVar24) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5e5;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86af;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* try { // try from 000e86b2 to 000e8726 has its CatchHandler @ 000e8b37 */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86b7;\n    FUN_000654e0();\n    *(byte **)(param_1 + 0x99c) = local_1f0;\n  }\nLAB_000e7d53:\n  if (*(char *)(param_1 + 0x3344) != '\0') {\n    *(undefined1 *)(param_1 + 0x32c9) = 1;\n  }\n  if (local_1bc != local_1ec) {\n    *(undefined1 **)(puVar18 + -0x10) = local_1bc;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe7d83;\n    FUN_001e6db0();\n  }\n  return;\n}" primitive_type (function_declarator "FUN_000e74a0(int param_1)" identifier (parameter_list "(int param_1)" ( (parameter_declaration "int param_1" primitive_type identifier) ))) (compound_statement "{\n  double dVar1;\n  undefined **ppuVar2;\n  undefined1 **ppuVar3;\n  undefined **ppuVar4;\n  char cVar5;\n  uint uVar6;\n  int *piVar7;\n  undefined4 *puVar8;\n  size_t sVar9;\n  uint uVar10;\n  undefined4 uVar11;\n  char *pcVar12;\n  undefined4 uVar13;\n  int iVar14;\n  undefined *puVar15;\n  uint uVar16;\n  undefined1 *puVar17;\n  undefined1 *puVar18;\n  byte *pbVar19;\n  byte *pbVar20;\n  byte *pbVar21;\n  bool bVar22;\n  bool bVar23;\n  bool bVar24;\n  byte bVar25;\n  undefined4 uStackY_230;\n  undefined1 auStack_20c [12];\n  undefined **local_200;\n  undefined **local_1fc;\n  undefined *local_1f8;\n  undefined ***local_1f4;\n  byte *local_1f0;\n  undefined1 *local_1ec;\n  undefined ***local_1e8;\n  undefined1 *local_1e4;\n  undefined1 *local_1e0;\n  undefined ***local_1dc;\n  uint local_1d8;\n  undefined1 **local_1d4;\n  undefined ***local_1d0;\n  double local_1cc;\n  undefined **local_1c4;\n  undefined1 local_1c0 [4];\n  undefined1 *local_1bc;\n  uint local_1b8;\n  undefined1 local_1b4 [16];\n  undefined1 *local_1a4;\n  int local_1a0;\n  undefined1 local_19c [16];\n  undefined2 local_18c;\n  undefined1 *local_188;\n  int local_184;\n  undefined1 local_180 [16];\n  undefined2 local_170;\n  undefined1 *local_16c;\n  int local_168;\n  undefined1 local_164 [16];\n  undefined2 local_154;\n  undefined1 *local_150;\n  int local_14c;\n  undefined1 local_148 [16];\n  undefined2 local_138;\n  undefined ***local_134;\n  int local_130;\n  undefined **local_12c [4];\n  undefined2 local_11c;\n  undefined1 local_110 [28];\n  undefined1 local_f4 [60];\n  int aiStack_b8 [5];\n  undefined **local_a4 [5];\n  byte local_90;\n  undefined4 local_34;\n  undefined2 local_30;\n  undefined4 local_2c;\n  undefined4 local_28;\n  undefined4 local_24;\n  undefined4 local_20;\n  \n  bVar25 = 0;\n  local_1c4 = &__DT_PLTGOT;\n  if (*(char *)(param_1 + 0x3469) == '\0') {\n    if (*(char *)(param_1 + 0x34e5) != '\0') goto LAB_000e79ea;\n    if (*(char *)(param_1 + 0x3561) != '\0') {\n      bVar24 = false;\n      goto LAB_000e79f9;\n    }\n    bVar24 = false;\n    if (*(char *)(param_1 + 0x7a9) != '\0') goto LAB_000e7a0c;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x34e5) = 1;\nLAB_000e79ea:\n    bVar24 = true;\n    *(undefined1 *)(param_1 + 0x3561) = 1;\nLAB_000e79f9:\n    *(undefined1 *)(param_1 + 0x35dd) = 1;\n    if (*(char *)(param_1 + 0x7a9) != '\0') {\nLAB_000e7a0c:\n      *(undefined1 *)(param_1 + 0x1a25) = 1;\n    }\n    if (((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&\n       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)) {\n      local_1c4 = &__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n      FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);\n    }\n  }\n  if (*(char *)(param_1 + 0xbcd) != '\0') {\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }\n  if (*(char *)(param_1 + 0xc49) != '\0') {\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }\n  if (*(char *)(param_1 + 0xb50) == '\0') {\n    local_1cc = (double)CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d));\n    *(byte *)(param_1 + 0xb51) = *(byte *)(param_1 + 0x318d) ^ 1;\n  }\n  bVar24 = *(char *)(param_1 + 0x4f31) == '\0';\n  if (bVar24) {\n    bVar24 = *(char *)(param_1 + 0x5545) == '\0';\n    if (!bVar24) {\n      *(undefined4 *)(param_1 + 0x5930) = 2;\n    }\n  }\n  else {\n    *(undefined4 *)(param_1 + 0x5930) = 1;\n  }\n  bVar22 = false;\n  iVar14 = 5;\n  local_1f0 = (byte *)0x28e9b2;\n  pbVar19 = *(byte **)(param_1 + 0x1bec);\n  pbVar20 = local_1f0;\n  do {\n    pbVar21 = pbVar20;\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    pbVar21 = pbVar20 + 1;\n    bVar22 = *pbVar19 < *pbVar20;\n    bVar24 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + 1;\n    pbVar20 = pbVar21;\n  } while (bVar24);\n  bVar23 = false;\n  bVar24 = (!bVar22 && !bVar24) == bVar22;\n  if (bVar24) {\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }\n  else {\n    iVar14 = 5;\n    pbVar19 = *(byte **)(param_1 + 0x1bec);\n    pbVar20 = (byte *)0x28e304;\n    do {\n      pbVar21 = pbVar20;\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      pbVar21 = pbVar20 + 1;\n      bVar23 = *pbVar19 < *pbVar20;\n      bVar24 = *pbVar19 == *pbVar20;\n      pbVar19 = pbVar19 + 1;\n      pbVar20 = pbVar21;\n    } while (bVar24);\n    *(uint *)(param_1 + 0x5934) = ((!bVar23 && !bVar24) == bVar23) + 1;\n  }\n  if (*(char *)(param_1 + 0xd4c) == '\0') {\n    if (*(char *)(param_1 + 0xd90) == '\0') {\n      local_1c4 = &__DT_PLTGOT;\n      pcVar12 = getenv("COLLECT_NO_DEMANGLE");\n      *(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0;\n    }\n    else {\n      *(undefined1 *)(param_1 + 0x5939) = 0;\n    }\n  }\n  else {\n    pcVar12 = *(char **)(param_1 + 0xd50);\n    *(undefined1 *)(param_1 + 0x5939) = 1;\n    local_1c4 = &__DT_PLTGOT;\n    if (*pcVar12 != '\0') {\n      iVar14 = FUN_001ce8a0(pcVar12);\n      if (iVar14 == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }\n      FUN_001ce850(iVar14);\n    }\n  }\n  ppuVar4 = local_1c4;\n  bVar24 = false;\n  bVar22 = *(char *)(param_1 + 0x2870) == '\0';\n  if (!bVar22) {\n    pbVar19 = *(byte **)(param_1 + 0x2874);\n    iVar14 = 6;\n    pbVar20 = pbVar19;\n    pbVar21 = (byte *)((int)local_1c4 + -0xeb29e);\n    do {\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar22 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n      pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n    } while (bVar22);\n    bVar23 = false;\n    bVar24 = (!bVar24 && !bVar22) == bVar24;\n    if (bVar24) {\n      *(undefined4 *)(param_1 + 0x5a88) = 0;\n    }\n    else {\n      iVar14 = 8;\n      pbVar20 = pbVar19;\n      pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar24 = (!bVar23 && !bVar24) == bVar23;\n      if (bVar24) {\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }\n      else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }\n    }\n  }\n  if ((*(char *)(param_1 + 0x2401) != '\0') && (*(char *)(param_1 + 0x247c) == '\0')) {\n    *(undefined1 *)(param_1 + 0x247c) = 1;\n    *(undefined ***)(param_1 + 0x2480) = local_1c4 + -0x4062a;\n  }\n  if ((*(char *)(param_1 + 0x24c1) != '\0') || (*(char *)(param_1 + 0x253d) != '\0')) {\n    *(undefined1 *)(param_1 + 0x5938) = 1;\n  }\n  iVar14 = *(int *)(param_1 + 0x3de8);\n  if (0 < iVar14) {\n    if (*(int *)(param_1 + 0x3e2c) == 0) {\n      *(int *)(param_1 + 0x3e2c) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3e70) == 0) {\n      *(int *)(param_1 + 0x3e70) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3eb4) == 0) {\n      *(int *)(param_1 + 0x3eb4) = iVar14;\n    }\n  }\n  local_1d4 = &local_1bc;\n  local_1b4[0] = 0;\n  local_1ec = local_1b4;\n  local_1b8 = 0;\n  local_1bc = local_1ec;\n  if (*(char *)(param_1 + 0x4ca8) == '\0') {\n    if (*(char *)(param_1 + 0x2729) == '\0') {\n      local_1dc = local_12c;\n      local_1d0 = (undefined ***)&local_134;\n      local_134 = local_1dc;\n                    /* try { // try from 000e81b5 to 000e81b9 has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0);\n      local_1a4 = local_19c;\n                    /* try { // try from 000e81e2 to 000e81e6 has its CatchHandler @ 000e8ba5 */\n      FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_18c = 1;\n      if (local_1a0 == 0) {\n                    /* try { // try from 000e8607 to 000e860b has its CatchHandler @ 000e8b3e */\n        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      local_1d8 = param_1 + 0x2184;\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e8623 to 000e8627 has its CatchHandler @ 000e8b45 */\n        FUN_000eae90(local_1d8,piVar7,&local_1a4);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e823f to 000e8243 has its CatchHandler @ 000e8b45 */\n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_1a4 != local_19c) {\n        FUN_001e6db0(local_1a4);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    /* try { // try from 000e82c9 to 000e82cd has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0);\n      local_188 = local_180;\n                    /* try { // try from 000e82f6 to 000e82fa has its CatchHandler @ 000e8b7d */\n      FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_170 = 1;\n      if (local_184 == 0) {\n                    /* try { // try from 000e87a7 to 000e87ab has its CatchHandler @ 000e8b68 */\n        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e883b to 000e883f has its CatchHandler @ 000e8b6f */\n        FUN_000eae90(local_1d8,piVar7,&local_188);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e8345 to 000e8349 has its CatchHandler @ 000e8b6f */\n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_188 != local_180) {\n        FUN_001e6db0(local_188);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    /* try { // try from 000e83cf to 000e83d3 has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0);\n      local_16c = local_164;\n                    /* try { // try from 000e83fc to 000e8400 has its CatchHandler @ 000e8b76 */\n      FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_154 = 1;\n      if (local_168 == 0) {\n                    /* try { // try from 000e87cf to 000e87d3 has its CatchHandler @ 000e8b61 */\n        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e881b to 000e881f has its CatchHandler @ 000e8b4c */\n        FUN_000eae90(local_1d8,piVar7,&local_16c);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e844b to 000e844f has its CatchHandler @ 000e8b4c */\n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_16c != local_164) {\n        FUN_001e6db0(local_16c);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    /* try { // try from 000e84d5 to 000e84d9 has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0);\n      local_1e0 = local_148;\n      local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n      local_150 = local_1e0;\n                    /* try { // try from 000e850e to 000e8512 has its CatchHandler @ 000e8b1b */\n      FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_138 = 1;\n      if (local_14c == 0) {\n                    /* try { // try from 000e87fc to 000e8800 has its CatchHandler @ 000e8b5a */\n        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e8860 to 000e8864 has its CatchHandler @ 000e8b14 */\n        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e855d to 000e8561 has its CatchHandler @ 000e8b14 */\n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_150 != local_1e0) {\n        FUN_001e6db0(local_150);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      goto LAB_000e7f08;\n    }\n  }\n  else {\n    pcVar12 = *(char **)(param_1 + 0x4cac);\n    sVar9 = strlen(pcVar12);\n    ppuVar3 = local_1d4;\n                    /* try { // try from 000e7ede to 000e7f8e has its CatchHandler @ 000e8b37 */\n    FUN_001ef9f0(local_1d4,0,0,pcVar12,sVar9);\n    iVar14 = FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6);\n    if (iVar14 == 0) {\n      uVar6 = local_1b8;\n      if (2 < local_1b8) {\n        uVar6 = 2;\n      }\n                    /* try { // try from 000e877d to 000e8781 has its CatchHandler @ 000e8b37 */\n      FUN_001eebf0(local_1d4,0,uVar6);\n    }\nLAB_000e7f08:\n    uVar6 = 0;\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n    if (local_1b8 != 0) {\n      do {\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    /* WARNING: Subroutine does not return */\n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */\n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      } while( true );\n    }\n  }\n  ppuVar4 = local_1c4;\n  puVar17 = auStack_20c;\n  puVar18 = auStack_20c;\n  if (*(int *)(param_1 + 0x3288) != 0) {\n    local_1e8 = local_a4;\n    local_1d0 = (undefined ***)&local_134;\n    FUN_0022bca0(local_1e8);\n    local_1fc = ppuVar4 + -0xa14;\n    local_34 = 0;\n    local_2c = 0;\n    local_a4[0] = ppuVar4 + -0xa12;\n    local_30 = 0;\n    local_28 = 0;\n    local_1f4 = (undefined ***)ppuVar4[-0x9d9];\n    local_1f8 = ppuVar4[-0x9d8];\n    local_24 = 0;\n    local_20 = 0;\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n                    /* try { // try from 000e77b7 to 000e77bb has its CatchHandler @ 000e8b92 */\n    FUN_00211450((int)local_1f4[-3] + (int)&local_134,0);\n    local_200 = ppuVar4 + -0x9d6;\n    local_134 = (undefined ***)(ppuVar4 + -0x9d3);\n    local_a4[0] = ppuVar4 + -0x9ce;\n    local_1dc = local_12c;\n                    /* try { // try from 000e77e9 to 000e77ed has its CatchHandler @ 000e8b84 */\n    FUN_00213670(local_12c);\n                    /* try { // try from 000e77f7 to 000e77fb has its CatchHandler @ 000e8b29 */\n    FUN_00211450(local_1e8,local_12c);\n                    /* try { // try from 000e780b to 000e783a has its CatchHandler @ 000e8b30 */\n    iVar14 = FUN_00217950(local_12c,*(undefined4 *)(param_1 + 0x3288),8);\n    puVar15 = (undefined *)((int)local_1d0 + (int)local_134[-3]);\n    if (iVar14 == 0) {\n                    /* try { // try from 000e8751 to 000e8755 has its CatchHandler @ 000e8b30 */\n      FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4);\n    }\n    else {\n      FUN_00210c00(puVar15,0);\n    }\n    ppuVar4 = local_1c4;\n    if ((local_90 & 5) != 0) {\n      piVar7 = __errno_location();\n      pcVar12 = strerror(*piVar7);\n      uVar11 = *(undefined4 *)(param_1 + 0x3288);\n      uVar13 = gettext(local_1c4 + -0x3f6cb);\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8a0c to 000e8a10 has its CatchHandler @ 000e8b30 */\n      FUN_00065450(uVar13,uVar11,pcVar12);\n    }\n    local_1e0 = local_148;\n    local_148[0] = 0;\n    local_14c = 0;\n    piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n    local_150 = local_1e0;\n    if (piVar7 == (int *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8af0 to 000e8af4 has its CatchHandler @ 000e8b8b */\n      FUN_0022c630();\n    }\n    if ((char)piVar7[7] == '\0') {\n                    /* try { // try from 000e80ec to 000e8113 has its CatchHandler @ 000e8b8b */\n      FUN_0022ccc0(piVar7);\n      iVar14 = 10;\n      if (*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0) {\n        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);\n        iVar14 = (int)cVar5;\n      }\n    }\n    else {\n      iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n    }\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n                    /* try { // try from 000e78b1 to 000e78f6 has its CatchHandler @ 000e8b8b */\n    FUN_001e7cb0(local_1d0,&local_150,iVar14);\n    local_1d4 = (undefined1 **)(param_1 + 0x5a3c);\n    local_1e4 = local_1c0;\n    while ((local_90 & 5) == 0) {\n      if ((local_14c != 0) && (local_150[local_14c + -1] == '\r')) {\n        *(undefined4 *)(puVar17 + -8) = 0;\n        *(int *)(puVar17 + -0xc) = local_14c + -1;\n        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;\n                    /* try { // try from 000e7e32 to 000e7e36 has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;\n        FUN_001ef780();\n      }\n      *(undefined4 *)(puVar17 + -8) = 0xc70f6907;\n      *(int *)(puVar17 + -0xc) = local_14c;\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe793a;\n      uVar6 = FUN_001e52b0();\n      local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40);\n      *(uint *)(puVar17 + -0x14) = uVar6;\n      *(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_;\n      *(uint *)(puVar17 + -0x1c) = local_1d8;\n      *(undefined1 ***)(puVar17 + -0x20) = local_1d4;\n      *(undefined4 *)(puVar17 + -0x24) = 0xe7960;\n      piVar7 = (int *)FUN_000eadf0();\n      if ((piVar7 == (int *)0x0) || (*piVar7 == 0)) {\n        *(undefined4 *)(puVar17 + -0x10) = 0x20;\n                    /* try { // try from 000e7a7b to 000e7a7f has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;\n        puVar8 = (undefined4 *)FUN_001e5200();\n        *puVar8 = 0;\n        puVar8[1] = puVar8 + 3;\n        *(undefined4 *)(puVar17 + -4) = 0;\n        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;\n        *(undefined1 **)(puVar17 + -0xc) = local_150;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;\n                    /* try { // try from 000e7aa7 to 000e7aab has its CatchHandler @ 000e8b99 */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;\n        FUN_000513a0();\n        *(undefined4 *)(puVar17 + -0xc) = 1;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8;\n        *(uint *)(puVar17 + -0x14) = uVar6;\n        *(uint *)(puVar17 + -0x18) = local_1d8;\n        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;\n        *(undefined1 **)(puVar17 + -0x20) = local_1e4;\n                    /* try { // try from 000e7ac4 to 000e7ac8 has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;\n        FUN_000ec3b0();\n        puVar17 = puVar17 + -4;\n      }\n      ppuVar4 = local_1c4;\n      piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n      if (piVar7 == (int *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88aa to 000e88ae has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -4) = 0xe88af;\n        FUN_0022c630();\n      }\n      if ((char)piVar7[7] == '\0') {\n        *(int **)(puVar17 + -0x10) = piVar7;\n                    /* try { // try from 000e79a3 to 000e79ca has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;\n        FUN_0022ccc0();\n        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);\n        iVar14 = 10;\n        if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }\n      }\n      else {\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }\n      *(int *)(puVar17 + -8) = iVar14;\n      *(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_;\n      *(undefined ****)(puVar17 + -0x10) = local_1d0;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe78f7;\n      FUN_001e7cb0();\n    }\n    if (local_150 != local_1e0) {\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe7aef;\n      FUN_001e6db0();\n    }\n    ppuVar4 = local_1c4;\n    *(undefined ****)(puVar17 + -0x10) = local_1dc;\n    local_134 = (undefined ***)(local_200 + 3);\n    local_a4[0] = local_200 + 8;\n    local_12c[0] = local_1c4 + -0x9f2;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b2f;\n    FUN_00216e90();\n    *(undefined1 **)(puVar17 + -0x10) = local_f4;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b3d;\n    FUN_001e75f0();\n    local_12c[0] = ppuVar4 + -0xbd7;\n    *(undefined1 **)(puVar17 + -0x10) = local_110;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b5a;\n    FUN_001e9510();\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n    local_a4[0] = local_1fc + 2;\n    *(undefined ****)(puVar17 + -0x10) = local_1e8;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b9b;\n    FUN_0022c040();\n    puVar18 = puVar17;\n  }\n  if ((*(char *)(param_1 + 0x72d) != '\0') && (*(char *)(param_1 + 0x42e0) == '\0')) {\n    *(int *)(param_1 + 0x42e4) = (int)local_1c4 + -0x10e8db;\n  }\n  if ((*(char *)(param_1 + 0x1a25) != '\0') && (*(char *)(param_1 + 0x1fc) == '\0')) {\n    *(undefined1 *)(param_1 + 0x1fd) = 1;\n  }\n  *(int *)(puVar18 + -0x10) = param_1;\n                    /* try { // try from 000e7bea to 000e7e1a has its CatchHandler @ 000e8b37 */\n  *(undefined4 *)(puVar18 + -0x14) = 0xe7bef;\n  FUN_000ddde0();\n  if (*(char *)(param_1 + 0x1a25) == '\0') {\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      if (*(char *)(param_1 + 0x5938) != '\0') {\n        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8b0f to 000e8b13 has its CatchHandler @ 000e8b37 */\n        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;\n        FUN_00065450();\n      }\n      if (*(char *)(param_1 + 0x318d) != '\0') {\n        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;\n        FUN_00065450();\n      }\n    }\n    if (*(int *)(param_1 + 0x1478) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe898c;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8994;\n      FUN_00065450();\n    }\n    if (*(int *)(param_1 + 0x1428) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c0;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e89c3 to 000e89c7 has its CatchHandler @ 000e8b37 */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c8;\n      FUN_00065450();\n    }\n    if ((*(char *)(param_1 + 0x318d) != '\0') && (*(int *)(param_1 + 0x3288) != 0)) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe7e13;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b;\n      FUN_00065450();\n    }\n  }\n  else {\n    if (*(char *)(param_1 + 0x5938) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8aea;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe892f;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8937;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x318d) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe894e;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8956;\n      FUN_00065450();\n    }\n  }\n  *(undefined4 *)(puVar18 + -0x10) = *(undefined4 *)(param_1 + 0x27ec);\n  *(undefined4 *)(puVar18 + -0x14) = 0xe7c40;\n  iVar14 = FUN_000dd760();\n  if ((iVar14 != 0) &&\n     (((*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||\n      (*(char *)(param_1 + 0x318d) != '\0')))) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f678;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8910;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8918;\n    FUN_00065450();\n  }\n  if ((*(char *)(param_1 + 0x1ae4) != '\0') &&\n     ((dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1)))) {\n    local_1cc = dVar1;\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f668;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe88cc;\n    uVar11 = gettext();\n    dVar1 = local_1cc;\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(double *)(puVar18 + -0xc) = dVar1;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88d9 to 000e8993 has its CatchHandler @ 000e8b37 */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe88de;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x5a1c) == '\0') {\n    if (*(int *)(param_1 + 0x5a10) == 0) goto LAB_000e7d53;\n  }\n  else if (*(int *)(param_1 + 0x5a10) == 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a66;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a6e;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x318d) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f63c;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a85;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a8d;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x3095) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f630;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aa4;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aac;\n    FUN_00065450();\n  }\n  if (*(int *)(param_1 + 0x593c) != 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f621;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8ac3;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8acb;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x56b9) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f614;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a28;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8a2b to 000e8ae9 has its CatchHandler @ 000e8b37 */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a30;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x2931) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f607;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a47;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a4f;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x18b1) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5fb;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe871f;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8727;\n    FUN_000654e0();\n    *(undefined1 *)(param_1 + 0x18b1) = 0;\n  }\n  bVar22 = *(int *)(param_1 + 0x5934) == 0;\n  bVar24 = !bVar22;\n  if (bVar24) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5ef;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86e7;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86ef;\n    FUN_000654e0();\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }\n  bVar24 = bVar24 && (undefined1 *)0xffffffef < puVar18 + -0x10;\n  bVar22 = bVar22 || puVar18 == (undefined1 *)0x0;\n  iVar14 = 5;\n  pbVar19 = *(byte **)(param_1 + 0x99c);\n  pbVar20 = local_1f0;\n  do {\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    bVar24 = *pbVar19 < *pbVar20;\n    bVar22 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n    pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n  } while (bVar22);\n  if ((!bVar24 && !bVar22) != bVar24) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5e5;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86af;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* try { // try from 000e86b2 to 000e8726 has its CatchHandler @ 000e8b37 */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86b7;\n    FUN_000654e0();\n    *(byte **)(param_1 + 0x99c) = local_1f0;\n  }\nLAB_000e7d53:\n  if (*(char *)(param_1 + 0x3344) != '\0') {\n    *(undefined1 *)(param_1 + 0x32c9) = 1;\n  }\n  if (local_1bc != local_1ec) {\n    *(undefined1 **)(puVar18 + -0x10) = local_1bc;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe7d83;\n    FUN_001e6db0();\n  }\n  return;\n}" { (declaration "double dVar1;" primitive_type identifier ;) (declaration "undefined **ppuVar2;" type_identifier (pointer_declarator "**ppuVar2" * (pointer_declarator "*ppuVar2" * identifier)) ;) (declaration "undefined1 **ppuVar3;" type_identifier (pointer_declarator "**ppuVar3" * (pointer_declarator "*ppuVar3" * identifier)) ;) (declaration "undefined **ppuVar4;" type_identifier (pointer_declarator "**ppuVar4" * (pointer_declarator "*ppuVar4" * identifier)) ;) (declaration "char cVar5;" primitive_type identifier ;) (declaration "uint uVar6;" type_identifier identifier ;) (declaration "int *piVar7;" primitive_type (pointer_declarator "*piVar7" * identifier) ;) (declaration "undefined4 *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "size_t sVar9;" primitive_type identifier ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "undefined4 uVar11;" type_identifier identifier ;) (declaration "char *pcVar12;" primitive_type (pointer_declarator "*pcVar12" * identifier) ;) (declaration "undefined4 uVar13;" type_identifier identifier ;) (declaration "int iVar14;" primitive_type identifier ;) (declaration "undefined *puVar15;" type_identifier (pointer_declarator "*puVar15" * identifier) ;) (declaration "uint uVar16;" type_identifier identifier ;) (declaration "undefined1 *puVar17;" type_identifier (pointer_declarator "*puVar17" * identifier) ;) (declaration "undefined1 *puVar18;" type_identifier (pointer_declarator "*puVar18" * identifier) ;) (declaration "byte *pbVar19;" type_identifier (pointer_declarator "*pbVar19" * identifier) ;) (declaration "byte *pbVar20;" type_identifier (pointer_declarator "*pbVar20" * identifier) ;) (declaration "byte *pbVar21;" type_identifier (pointer_declarator "*pbVar21" * identifier) ;) (declaration "bool bVar22;" primitive_type identifier ;) (declaration "bool bVar23;" primitive_type identifier ;) (declaration "bool bVar24;" primitive_type identifier ;) (declaration "byte bVar25;" type_identifier identifier ;) (declaration "undefined4 uStackY_230;" type_identifier identifier ;) (declaration "undefined1 auStack_20c [12];" type_identifier (array_declarator "auStack_20c [12]" identifier [ number_literal ]) ;) (declaration "undefined **local_200;" type_identifier (pointer_declarator "**local_200" * (pointer_declarator "*local_200" * identifier)) ;) (declaration "undefined **local_1fc;" type_identifier (pointer_declarator "**local_1fc" * (pointer_declarator "*local_1fc" * identifier)) ;) (declaration "undefined *local_1f8;" type_identifier (pointer_declarator "*local_1f8" * identifier) ;) (declaration "undefined ***local_1f4;" type_identifier (pointer_declarator "***local_1f4" * (pointer_declarator "**local_1f4" * (pointer_declarator "*local_1f4" * identifier))) ;) (declaration "byte *local_1f0;" type_identifier (pointer_declarator "*local_1f0" * identifier) ;) (declaration "undefined1 *local_1ec;" type_identifier (pointer_declarator "*local_1ec" * identifier) ;) (declaration "undefined ***local_1e8;" type_identifier (pointer_declarator "***local_1e8" * (pointer_declarator "**local_1e8" * (pointer_declarator "*local_1e8" * identifier))) ;) (declaration "undefined1 *local_1e4;" type_identifier (pointer_declarator "*local_1e4" * identifier) ;) (declaration "undefined1 *local_1e0;" type_identifier (pointer_declarator "*local_1e0" * identifier) ;) (declaration "undefined ***local_1dc;" type_identifier (pointer_declarator "***local_1dc" * (pointer_declarator "**local_1dc" * (pointer_declarator "*local_1dc" * identifier))) ;) (declaration "uint local_1d8;" type_identifier identifier ;) (declaration "undefined1 **local_1d4;" type_identifier (pointer_declarator "**local_1d4" * (pointer_declarator "*local_1d4" * identifier)) ;) (declaration "undefined ***local_1d0;" type_identifier (pointer_declarator "***local_1d0" * (pointer_declarator "**local_1d0" * (pointer_declarator "*local_1d0" * identifier))) ;) (declaration "double local_1cc;" primitive_type identifier ;) (declaration "undefined **local_1c4;" type_identifier (pointer_declarator "**local_1c4" * (pointer_declarator "*local_1c4" * identifier)) ;) (declaration "undefined1 local_1c0 [4];" type_identifier (array_declarator "local_1c0 [4]" identifier [ number_literal ]) ;) (declaration "undefined1 *local_1bc;" type_identifier (pointer_declarator "*local_1bc" * identifier) ;) (declaration "uint local_1b8;" type_identifier identifier ;) (declaration "undefined1 local_1b4 [16];" type_identifier (array_declarator "local_1b4 [16]" identifier [ number_literal ]) ;) (declaration "undefined1 *local_1a4;" type_identifier (pointer_declarator "*local_1a4" * identifier) ;) (declaration "int local_1a0;" primitive_type identifier ;) (declaration "undefined1 local_19c [16];" type_identifier (array_declarator "local_19c [16]" identifier [ number_literal ]) ;) (declaration "undefined2 local_18c;" type_identifier identifier ;) (declaration "undefined1 *local_188;" type_identifier (pointer_declarator "*local_188" * identifier) ;) (declaration "int local_184;" primitive_type identifier ;) (declaration "undefined1 local_180 [16];" type_identifier (array_declarator "local_180 [16]" identifier [ number_literal ]) ;) (declaration "undefined2 local_170;" type_identifier identifier ;) (declaration "undefined1 *local_16c;" type_identifier (pointer_declarator "*local_16c" * identifier) ;) (declaration "int local_168;" primitive_type identifier ;) (declaration "undefined1 local_164 [16];" type_identifier (array_declarator "local_164 [16]" identifier [ number_literal ]) ;) (declaration "undefined2 local_154;" type_identifier identifier ;) (declaration "undefined1 *local_150;" type_identifier (pointer_declarator "*local_150" * identifier) ;) (declaration "int local_14c;" primitive_type identifier ;) (declaration "undefined1 local_148 [16];" type_identifier (array_declarator "local_148 [16]" identifier [ number_literal ]) ;) (declaration "undefined2 local_138;" type_identifier identifier ;) (declaration "undefined ***local_134;" type_identifier (pointer_declarator "***local_134" * (pointer_declarator "**local_134" * (pointer_declarator "*local_134" * identifier))) ;) (declaration "int local_130;" primitive_type identifier ;) (declaration "undefined **local_12c [4];" type_identifier (pointer_declarator "**local_12c [4]" * (pointer_declarator "*local_12c [4]" * (array_declarator "local_12c [4]" identifier [ number_literal ]))) ;) (declaration "undefined2 local_11c;" type_identifier identifier ;) (declaration "undefined1 local_110 [28];" type_identifier (array_declarator "local_110 [28]" identifier [ number_literal ]) ;) (declaration "undefined1 local_f4 [60];" type_identifier (array_declarator "local_f4 [60]" identifier [ number_literal ]) ;) (declaration "int aiStack_b8 [5];" primitive_type (array_declarator "aiStack_b8 [5]" identifier [ number_literal ]) ;) (declaration "undefined **local_a4 [5];" type_identifier (pointer_declarator "**local_a4 [5]" * (pointer_declarator "*local_a4 [5]" * (array_declarator "local_a4 [5]" identifier [ number_literal ]))) ;) (declaration "byte local_90;" type_identifier identifier ;) (declaration "undefined4 local_34;" type_identifier identifier ;) (declaration "undefined2 local_30;" type_identifier identifier ;) (declaration "undefined4 local_2c;" type_identifier identifier ;) (declaration "undefined4 local_28;" type_identifier identifier ;) (declaration "undefined4 local_24;" type_identifier identifier ;) (declaration "undefined4 local_20;" type_identifier identifier ;) (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" identifier = number_literal) ;) (expression_statement "local_1c4 = &__DT_PLTGOT;" (assignment_expression "local_1c4 = &__DT_PLTGOT" identifier = (pointer_expression "&__DT_PLTGOT" & identifier)) ;) (if_statement "if (*(char *)(param_1 + 0x3469) == '\0') {\n    if (*(char *)(param_1 + 0x34e5) != '\0') goto LAB_000e79ea;\n    if (*(char *)(param_1 + 0x3561) != '\0') {\n      bVar24 = false;\n      goto LAB_000e79f9;\n    }\n    bVar24 = false;\n    if (*(char *)(param_1 + 0x7a9) != '\0') goto LAB_000e7a0c;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x34e5) = 1;\nLAB_000e79ea:\n    bVar24 = true;\n    *(undefined1 *)(param_1 + 0x3561) = 1;\nLAB_000e79f9:\n    *(undefined1 *)(param_1 + 0x35dd) = 1;\n    if (*(char *)(param_1 + 0x7a9) != '\0') {\nLAB_000e7a0c:\n      *(undefined1 *)(param_1 + 0x1a25) = 1;\n    }\n    if (((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&\n       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)) {\n      local_1c4 = &__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n      FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);\n    }\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0x3469) == '\0')" ( (binary_expression "*(char *)(param_1 + 0x3469) == '\0'" (pointer_expression "*(char *)(param_1 + 0x3469)" * (cast_expression "(char *)(param_1 + 0x3469)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3469)" ( (binary_expression "param_1 + 0x3469" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (*(char *)(param_1 + 0x34e5) != '\0') goto LAB_000e79ea;\n    if (*(char *)(param_1 + 0x3561) != '\0') {\n      bVar24 = false;\n      goto LAB_000e79f9;\n    }\n    bVar24 = false;\n    if (*(char *)(param_1 + 0x7a9) != '\0') goto LAB_000e7a0c;\n  }" { (if_statement "if (*(char *)(param_1 + 0x34e5) != '\0') goto LAB_000e79ea;" if (parenthesized_expression "(*(char *)(param_1 + 0x34e5) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x34e5) != '\0'" (pointer_expression "*(char *)(param_1 + 0x34e5)" * (cast_expression "(char *)(param_1 + 0x34e5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x34e5)" ( (binary_expression "param_1 + 0x34e5" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000e79ea;" goto statement_identifier ;)) (if_statement "if (*(char *)(param_1 + 0x3561) != '\0') {\n      bVar24 = false;\n      goto LAB_000e79f9;\n    }" if (parenthesized_expression "(*(char *)(param_1 + 0x3561) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x3561) != '\0'" (pointer_expression "*(char *)(param_1 + 0x3561)" * (cast_expression "(char *)(param_1 + 0x3561)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3561)" ( (binary_expression "param_1 + 0x3561" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      bVar24 = false;\n      goto LAB_000e79f9;\n    }" { (expression_statement "bVar24 = false;" (assignment_expression "bVar24 = false" identifier = false) ;) (goto_statement "goto LAB_000e79f9;" goto statement_identifier ;) })) (expression_statement "bVar24 = false;" (assignment_expression "bVar24 = false" identifier = false) ;) (if_statement "if (*(char *)(param_1 + 0x7a9) != '\0') goto LAB_000e7a0c;" if (parenthesized_expression "(*(char *)(param_1 + 0x7a9) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x7a9) != '\0'" (pointer_expression "*(char *)(param_1 + 0x7a9)" * (cast_expression "(char *)(param_1 + 0x7a9)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x7a9)" ( (binary_expression "param_1 + 0x7a9" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000e7a0c;" goto statement_identifier ;)) }) (else_clause "else {\n    *(undefined1 *)(param_1 + 0x34e5) = 1;\nLAB_000e79ea:\n    bVar24 = true;\n    *(undefined1 *)(param_1 + 0x3561) = 1;\nLAB_000e79f9:\n    *(undefined1 *)(param_1 + 0x35dd) = 1;\n    if (*(char *)(param_1 + 0x7a9) != '\0') {\nLAB_000e7a0c:\n      *(undefined1 *)(param_1 + 0x1a25) = 1;\n    }\n    if (((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&\n       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)) {\n      local_1c4 = &__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n      FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);\n    }\n  }" else (compound_statement "{\n    *(undefined1 *)(param_1 + 0x34e5) = 1;\nLAB_000e79ea:\n    bVar24 = true;\n    *(undefined1 *)(param_1 + 0x3561) = 1;\nLAB_000e79f9:\n    *(undefined1 *)(param_1 + 0x35dd) = 1;\n    if (*(char *)(param_1 + 0x7a9) != '\0') {\nLAB_000e7a0c:\n      *(undefined1 *)(param_1 + 0x1a25) = 1;\n    }\n    if (((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&\n       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)) {\n      local_1c4 = &__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n      FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);\n    }\n  }" { (expression_statement "*(undefined1 *)(param_1 + 0x34e5) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x34e5) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x34e5)" * (cast_expression "(undefined1 *)(param_1 + 0x34e5)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x34e5)" ( (binary_expression "param_1 + 0x34e5" identifier + number_literal) )))) = number_literal) ;) (labeled_statement "LAB_000e79ea:\n    bVar24 = true;" statement_identifier : (expression_statement "bVar24 = true;" (assignment_expression "bVar24 = true" identifier = true) ;)) (expression_statement "*(undefined1 *)(param_1 + 0x3561) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x3561) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x3561)" * (cast_expression "(undefined1 *)(param_1 + 0x3561)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3561)" ( (binary_expression "param_1 + 0x3561" identifier + number_literal) )))) = number_literal) ;) (labeled_statement "LAB_000e79f9:\n    *(undefined1 *)(param_1 + 0x35dd) = 1;" statement_identifier : (expression_statement "*(undefined1 *)(param_1 + 0x35dd) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x35dd) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x35dd)" * (cast_expression "(undefined1 *)(param_1 + 0x35dd)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x35dd)" ( (binary_expression "param_1 + 0x35dd" identifier + number_literal) )))) = number_literal) ;)) (if_statement "if (*(char *)(param_1 + 0x7a9) != '\0') {\nLAB_000e7a0c:\n      *(undefined1 *)(param_1 + 0x1a25) = 1;\n    }" if (parenthesized_expression "(*(char *)(param_1 + 0x7a9) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x7a9) != '\0'" (pointer_expression "*(char *)(param_1 + 0x7a9)" * (cast_expression "(char *)(param_1 + 0x7a9)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x7a9)" ( (binary_expression "param_1 + 0x7a9" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_000e7a0c:\n      *(undefined1 *)(param_1 + 0x1a25) = 1;\n    }" { (labeled_statement "LAB_000e7a0c:\n      *(undefined1 *)(param_1 + 0x1a25) = 1;" statement_identifier : (expression_statement "*(undefined1 *)(param_1 + 0x1a25) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x1a25) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x1a25)" * (cast_expression "(undefined1 *)(param_1 + 0x1a25)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1a25)" ( (binary_expression "param_1 + 0x1a25" identifier + number_literal) )))) = number_literal) ;)) })) (if_statement "if (((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&\n       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)) {\n      local_1c4 = &__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n      FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);\n    }" if (parenthesized_expression "(((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&\n       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24))" ( (binary_expression "((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&\n       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)" (parenthesized_expression "((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0'))" ( (binary_expression "(*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')" (parenthesized_expression "(*(char *)(param_1 + 0x3469) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x3469) != '\0'" (pointer_expression "*(char *)(param_1 + 0x3469)" * (cast_expression "(char *)(param_1 + 0x3469)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3469)" ( (binary_expression "param_1 + 0x3469" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(*(char *)(param_1 + 0x318d) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x318d) != '\0'" (pointer_expression "*(char *)(param_1 + 0x318d)" * (cast_expression "(char *)(param_1 + 0x318d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x318d)" ( (binary_expression "param_1 + 0x318d" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) ))) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)" ( (comma_expression "*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24" (assignment_expression "*(undefined1 *)(param_1 + 0x3469) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x3469)" * (cast_expression "(undefined1 *)(param_1 + 0x3469)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3469)" ( (binary_expression "param_1 + 0x3469" identifier + number_literal) )))) = number_literal) , (unary_expression "!bVar24" ! identifier)) ))) )) (compound_statement "{\n      local_1c4 = &__DT_PLTGOT;\n                    /* WARNING: Subroutine does not return */\n      FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);\n    }" { (expression_statement "local_1c4 = &__DT_PLTGOT;" (assignment_expression "local_1c4 = &__DT_PLTGOT" identifier = (pointer_expression "&__DT_PLTGOT" & identifier)) ;) comment (expression_statement "FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);" (call_expression "FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1)" identifier (argument_list "("../../gold/options.cc",0x453,"finalize",param_1)" ( (string_literal ""../../gold/options.cc"" " string_content ") , number_literal , (string_literal ""finalize"" " string_content ") , identifier ))) ;) })) }))) (if_statement "if (*(char *)(param_1 + 0xbcd) != '\0') {\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0xbcd) != '\0')" ( (binary_expression "*(char *)(param_1 + 0xbcd) != '\0'" (pointer_expression "*(char *)(param_1 + 0xbcd)" * (cast_expression "(char *)(param_1 + 0xbcd)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xbcd)" ( (binary_expression "param_1 + 0xbcd" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }" { (expression_statement "*(undefined1 *)(param_1 + 0xb51) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0xb51) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0xb51)" * (cast_expression "(undefined1 *)(param_1 + 0xb51)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xb51)" ( (binary_expression "param_1 + 0xb51" identifier + number_literal) )))) = number_literal) ;) })) (if_statement "if (*(char *)(param_1 + 0xc49) != '\0') {\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0xc49) != '\0')" ( (binary_expression "*(char *)(param_1 + 0xc49) != '\0'" (pointer_expression "*(char *)(param_1 + 0xc49)" * (cast_expression "(char *)(param_1 + 0xc49)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc49)" ( (binary_expression "param_1 + 0xc49" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }" { (expression_statement "*(undefined1 *)(param_1 + 0xb51) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0xb51) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0xb51)" * (cast_expression "(undefined1 *)(param_1 + 0xb51)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xb51)" ( (binary_expression "param_1 + 0xb51" identifier + number_literal) )))) = number_literal) ;) })) (if_statement "if (*(char *)(param_1 + 0xb50) == '\0') {\n    local_1cc = (double)CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d));\n    *(byte *)(param_1 + 0xb51) = *(byte *)(param_1 + 0x318d) ^ 1;\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0xb50) == '\0')" ( (binary_expression "*(char *)(param_1 + 0xb50) == '\0'" (pointer_expression "*(char *)(param_1 + 0xb50)" * (cast_expression "(char *)(param_1 + 0xb50)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xb50)" ( (binary_expression "param_1 + 0xb50" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    local_1cc = (double)CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d));\n    *(byte *)(param_1 + 0xb51) = *(byte *)(param_1 + 0x318d) ^ 1;\n  }" { (expression_statement "local_1cc = (double)CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d));" (assignment_expression "local_1cc = (double)CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d))" identifier = (cast_expression "(double)CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d))" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d))" identifier (argument_list "(local_1cc._1_7_,*(byte *)(param_1 + 0x318d))" ( (field_expression "local_1cc._1_7_" identifier . field_identifier) , (pointer_expression "*(byte *)(param_1 + 0x318d)" * (cast_expression "(byte *)(param_1 + 0x318d)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x318d)" ( (binary_expression "param_1 + 0x318d" identifier + number_literal) )))) ))))) ;) (expression_statement "*(byte *)(param_1 + 0xb51) = *(byte *)(param_1 + 0x318d) ^ 1;" (assignment_expression "*(byte *)(param_1 + 0xb51) = *(byte *)(param_1 + 0x318d) ^ 1" (pointer_expression "*(byte *)(param_1 + 0xb51)" * (cast_expression "(byte *)(param_1 + 0xb51)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xb51)" ( (binary_expression "param_1 + 0xb51" identifier + number_literal) )))) = (binary_expression "*(byte *)(param_1 + 0x318d) ^ 1" (pointer_expression "*(byte *)(param_1 + 0x318d)" * (cast_expression "(byte *)(param_1 + 0x318d)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x318d)" ( (binary_expression "param_1 + 0x318d" identifier + number_literal) )))) ^ number_literal)) ;) })) (expression_statement "bVar24 = *(char *)(param_1 + 0x4f31) == '\0';" (assignment_expression "bVar24 = *(char *)(param_1 + 0x4f31) == '\0'" identifier = (binary_expression "*(char *)(param_1 + 0x4f31) == '\0'" (pointer_expression "*(char *)(param_1 + 0x4f31)" * (cast_expression "(char *)(param_1 + 0x4f31)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x4f31)" ( (binary_expression "param_1 + 0x4f31" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence '))) ;) (if_statement "if (bVar24) {\n    bVar24 = *(char *)(param_1 + 0x5545) == '\0';\n    if (!bVar24) {\n      *(undefined4 *)(param_1 + 0x5930) = 2;\n    }\n  }\n  else {\n    *(undefined4 *)(param_1 + 0x5930) = 1;\n  }" if (parenthesized_expression "(bVar24)" ( identifier )) (compound_statement "{\n    bVar24 = *(char *)(param_1 + 0x5545) == '\0';\n    if (!bVar24) {\n      *(undefined4 *)(param_1 + 0x5930) = 2;\n    }\n  }" { (expression_statement "bVar24 = *(char *)(param_1 + 0x5545) == '\0';" (assignment_expression "bVar24 = *(char *)(param_1 + 0x5545) == '\0'" identifier = (binary_expression "*(char *)(param_1 + 0x5545) == '\0'" (pointer_expression "*(char *)(param_1 + 0x5545)" * (cast_expression "(char *)(param_1 + 0x5545)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5545)" ( (binary_expression "param_1 + 0x5545" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence '))) ;) (if_statement "if (!bVar24) {\n      *(undefined4 *)(param_1 + 0x5930) = 2;\n    }" if (parenthesized_expression "(!bVar24)" ( (unary_expression "!bVar24" ! identifier) )) (compound_statement "{\n      *(undefined4 *)(param_1 + 0x5930) = 2;\n    }" { (expression_statement "*(undefined4 *)(param_1 + 0x5930) = 2;" (assignment_expression "*(undefined4 *)(param_1 + 0x5930) = 2" (pointer_expression "*(undefined4 *)(param_1 + 0x5930)" * (cast_expression "(undefined4 *)(param_1 + 0x5930)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5930)" ( (binary_expression "param_1 + 0x5930" identifier + number_literal) )))) = number_literal) ;) })) }) (else_clause "else {\n    *(undefined4 *)(param_1 + 0x5930) = 1;\n  }" else (compound_statement "{\n    *(undefined4 *)(param_1 + 0x5930) = 1;\n  }" { (expression_statement "*(undefined4 *)(param_1 + 0x5930) = 1;" (assignment_expression "*(undefined4 *)(param_1 + 0x5930) = 1" (pointer_expression "*(undefined4 *)(param_1 + 0x5930)" * (cast_expression "(undefined4 *)(param_1 + 0x5930)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5930)" ( (binary_expression "param_1 + 0x5930" identifier + number_literal) )))) = number_literal) ;) }))) (expression_statement "bVar22 = false;" (assignment_expression "bVar22 = false" identifier = false) ;) (expression_statement "iVar14 = 5;" (assignment_expression "iVar14 = 5" identifier = number_literal) ;) (expression_statement "local_1f0 = (byte *)0x28e9b2;" (assignment_expression "local_1f0 = (byte *)0x28e9b2" identifier = (cast_expression "(byte *)0x28e9b2" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pbVar19 = *(byte **)(param_1 + 0x1bec);" (assignment_expression "pbVar19 = *(byte **)(param_1 + 0x1bec)" identifier = (pointer_expression "*(byte **)(param_1 + 0x1bec)" * (cast_expression "(byte **)(param_1 + 0x1bec)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x1bec)" ( (binary_expression "param_1 + 0x1bec" identifier + number_literal) ))))) ;) (expression_statement "pbVar20 = local_1f0;" (assignment_expression "pbVar20 = local_1f0" identifier = identifier) ;) (do_statement "do {\n    pbVar21 = pbVar20;\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    pbVar21 = pbVar20 + 1;\n    bVar22 = *pbVar19 < *pbVar20;\n    bVar24 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + 1;\n    pbVar20 = pbVar21;\n  } while (bVar24);" do (compound_statement "{\n    pbVar21 = pbVar20;\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    pbVar21 = pbVar20 + 1;\n    bVar22 = *pbVar19 < *pbVar20;\n    bVar24 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + 1;\n    pbVar20 = pbVar21;\n  }" { (expression_statement "pbVar21 = pbVar20;" (assignment_expression "pbVar21 = pbVar20" identifier = identifier) ;) (if_statement "if (iVar14 == 0) break;" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" identifier = (binary_expression "iVar14 + -1" identifier + number_literal)) ;) (expression_statement "pbVar21 = pbVar20 + 1;" (assignment_expression "pbVar21 = pbVar20 + 1" identifier = (binary_expression "pbVar20 + 1" identifier + number_literal)) ;) (expression_statement "bVar22 = *pbVar19 < *pbVar20;" (assignment_expression "bVar22 = *pbVar19 < *pbVar20" identifier = (binary_expression "*pbVar19 < *pbVar20" (pointer_expression "*pbVar19" * identifier) < (pointer_expression "*pbVar20" * identifier))) ;) (expression_statement "bVar24 = *pbVar19 == *pbVar20;" (assignment_expression "bVar24 = *pbVar19 == *pbVar20" identifier = (binary_expression "*pbVar19 == *pbVar20" (pointer_expression "*pbVar19" * identifier) == (pointer_expression "*pbVar20" * identifier))) ;) (expression_statement "pbVar19 = pbVar19 + 1;" (assignment_expression "pbVar19 = pbVar19 + 1" identifier = (binary_expression "pbVar19 + 1" identifier + number_literal)) ;) (expression_statement "pbVar20 = pbVar21;" (assignment_expression "pbVar20 = pbVar21" identifier = identifier) ;) }) while (parenthesized_expression "(bVar24)" ( identifier )) ;) (expression_statement "bVar23 = false;" (assignment_expression "bVar23 = false" identifier = false) ;) (expression_statement "bVar24 = (!bVar22 && !bVar24) == bVar22;" (assignment_expression "bVar24 = (!bVar22 && !bVar24) == bVar22" identifier = (binary_expression "(!bVar22 && !bVar24) == bVar22" (parenthesized_expression "(!bVar22 && !bVar24)" ( (binary_expression "!bVar22 && !bVar24" (unary_expression "!bVar22" ! identifier) && (unary_expression "!bVar24" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar24) {\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }\n  else {\n    iVar14 = 5;\n    pbVar19 = *(byte **)(param_1 + 0x1bec);\n    pbVar20 = (byte *)0x28e304;\n    do {\n      pbVar21 = pbVar20;\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      pbVar21 = pbVar20 + 1;\n      bVar23 = *pbVar19 < *pbVar20;\n      bVar24 = *pbVar19 == *pbVar20;\n      pbVar19 = pbVar19 + 1;\n      pbVar20 = pbVar21;\n    } while (bVar24);\n    *(uint *)(param_1 + 0x5934) = ((!bVar23 && !bVar24) == bVar23) + 1;\n  }" if (parenthesized_expression "(bVar24)" ( identifier )) (compound_statement "{\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }" { (expression_statement "*(undefined4 *)(param_1 + 0x5934) = 0;" (assignment_expression "*(undefined4 *)(param_1 + 0x5934) = 0" (pointer_expression "*(undefined4 *)(param_1 + 0x5934)" * (cast_expression "(undefined4 *)(param_1 + 0x5934)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5934)" ( (binary_expression "param_1 + 0x5934" identifier + number_literal) )))) = number_literal) ;) }) (else_clause "else {\n    iVar14 = 5;\n    pbVar19 = *(byte **)(param_1 + 0x1bec);\n    pbVar20 = (byte *)0x28e304;\n    do {\n      pbVar21 = pbVar20;\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      pbVar21 = pbVar20 + 1;\n      bVar23 = *pbVar19 < *pbVar20;\n      bVar24 = *pbVar19 == *pbVar20;\n      pbVar19 = pbVar19 + 1;\n      pbVar20 = pbVar21;\n    } while (bVar24);\n    *(uint *)(param_1 + 0x5934) = ((!bVar23 && !bVar24) == bVar23) + 1;\n  }" else (compound_statement "{\n    iVar14 = 5;\n    pbVar19 = *(byte **)(param_1 + 0x1bec);\n    pbVar20 = (byte *)0x28e304;\n    do {\n      pbVar21 = pbVar20;\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      pbVar21 = pbVar20 + 1;\n      bVar23 = *pbVar19 < *pbVar20;\n      bVar24 = *pbVar19 == *pbVar20;\n      pbVar19 = pbVar19 + 1;\n      pbVar20 = pbVar21;\n    } while (bVar24);\n    *(uint *)(param_1 + 0x5934) = ((!bVar23 && !bVar24) == bVar23) + 1;\n  }" { (expression_statement "iVar14 = 5;" (assignment_expression "iVar14 = 5" identifier = number_literal) ;) (expression_statement "pbVar19 = *(byte **)(param_1 + 0x1bec);" (assignment_expression "pbVar19 = *(byte **)(param_1 + 0x1bec)" identifier = (pointer_expression "*(byte **)(param_1 + 0x1bec)" * (cast_expression "(byte **)(param_1 + 0x1bec)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x1bec)" ( (binary_expression "param_1 + 0x1bec" identifier + number_literal) ))))) ;) (expression_statement "pbVar20 = (byte *)0x28e304;" (assignment_expression "pbVar20 = (byte *)0x28e304" identifier = (cast_expression "(byte *)0x28e304" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n      pbVar21 = pbVar20;\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      pbVar21 = pbVar20 + 1;\n      bVar23 = *pbVar19 < *pbVar20;\n      bVar24 = *pbVar19 == *pbVar20;\n      pbVar19 = pbVar19 + 1;\n      pbVar20 = pbVar21;\n    } while (bVar24);" do (compound_statement "{\n      pbVar21 = pbVar20;\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      pbVar21 = pbVar20 + 1;\n      bVar23 = *pbVar19 < *pbVar20;\n      bVar24 = *pbVar19 == *pbVar20;\n      pbVar19 = pbVar19 + 1;\n      pbVar20 = pbVar21;\n    }" { (expression_statement "pbVar21 = pbVar20;" (assignment_expression "pbVar21 = pbVar20" identifier = identifier) ;) (if_statement "if (iVar14 == 0) break;" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" identifier = (binary_expression "iVar14 + -1" identifier + number_literal)) ;) (expression_statement "pbVar21 = pbVar20 + 1;" (assignment_expression "pbVar21 = pbVar20 + 1" identifier = (binary_expression "pbVar20 + 1" identifier + number_literal)) ;) (expression_statement "bVar23 = *pbVar19 < *pbVar20;" (assignment_expression "bVar23 = *pbVar19 < *pbVar20" identifier = (binary_expression "*pbVar19 < *pbVar20" (pointer_expression "*pbVar19" * identifier) < (pointer_expression "*pbVar20" * identifier))) ;) (expression_statement "bVar24 = *pbVar19 == *pbVar20;" (assignment_expression "bVar24 = *pbVar19 == *pbVar20" identifier = (binary_expression "*pbVar19 == *pbVar20" (pointer_expression "*pbVar19" * identifier) == (pointer_expression "*pbVar20" * identifier))) ;) (expression_statement "pbVar19 = pbVar19 + 1;" (assignment_expression "pbVar19 = pbVar19 + 1" identifier = (binary_expression "pbVar19 + 1" identifier + number_literal)) ;) (expression_statement "pbVar20 = pbVar21;" (assignment_expression "pbVar20 = pbVar21" identifier = identifier) ;) }) while (parenthesized_expression "(bVar24)" ( identifier )) ;) (expression_statement "*(uint *)(param_1 + 0x5934) = ((!bVar23 && !bVar24) == bVar23) + 1;" (assignment_expression "*(uint *)(param_1 + 0x5934) = ((!bVar23 && !bVar24) == bVar23) + 1" (pointer_expression "*(uint *)(param_1 + 0x5934)" * (cast_expression "(uint *)(param_1 + 0x5934)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5934)" ( (binary_expression "param_1 + 0x5934" identifier + number_literal) )))) = (binary_expression "((!bVar23 && !bVar24) == bVar23) + 1" (parenthesized_expression "((!bVar23 && !bVar24) == bVar23)" ( (binary_expression "(!bVar23 && !bVar24) == bVar23" (parenthesized_expression "(!bVar23 && !bVar24)" ( (binary_expression "!bVar23 && !bVar24" (unary_expression "!bVar23" ! identifier) && (unary_expression "!bVar24" ! identifier)) )) == identifier) )) + number_literal)) ;) }))) (if_statement "if (*(char *)(param_1 + 0xd4c) == '\0') {\n    if (*(char *)(param_1 + 0xd90) == '\0') {\n      local_1c4 = &__DT_PLTGOT;\n      pcVar12 = getenv("COLLECT_NO_DEMANGLE");\n      *(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0;\n    }\n    else {\n      *(undefined1 *)(param_1 + 0x5939) = 0;\n    }\n  }\n  else {\n    pcVar12 = *(char **)(param_1 + 0xd50);\n    *(undefined1 *)(param_1 + 0x5939) = 1;\n    local_1c4 = &__DT_PLTGOT;\n    if (*pcVar12 != '\0') {\n      iVar14 = FUN_001ce8a0(pcVar12);\n      if (iVar14 == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }\n      FUN_001ce850(iVar14);\n    }\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0xd4c) == '\0')" ( (binary_expression "*(char *)(param_1 + 0xd4c) == '\0'" (pointer_expression "*(char *)(param_1 + 0xd4c)" * (cast_expression "(char *)(param_1 + 0xd4c)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xd4c)" ( (binary_expression "param_1 + 0xd4c" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (*(char *)(param_1 + 0xd90) == '\0') {\n      local_1c4 = &__DT_PLTGOT;\n      pcVar12 = getenv("COLLECT_NO_DEMANGLE");\n      *(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0;\n    }\n    else {\n      *(undefined1 *)(param_1 + 0x5939) = 0;\n    }\n  }" { (if_statement "if (*(char *)(param_1 + 0xd90) == '\0') {\n      local_1c4 = &__DT_PLTGOT;\n      pcVar12 = getenv("COLLECT_NO_DEMANGLE");\n      *(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0;\n    }\n    else {\n      *(undefined1 *)(param_1 + 0x5939) = 0;\n    }" if (parenthesized_expression "(*(char *)(param_1 + 0xd90) == '\0')" ( (binary_expression "*(char *)(param_1 + 0xd90) == '\0'" (pointer_expression "*(char *)(param_1 + 0xd90)" * (cast_expression "(char *)(param_1 + 0xd90)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xd90)" ( (binary_expression "param_1 + 0xd90" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      local_1c4 = &__DT_PLTGOT;\n      pcVar12 = getenv("COLLECT_NO_DEMANGLE");\n      *(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0;\n    }" { (expression_statement "local_1c4 = &__DT_PLTGOT;" (assignment_expression "local_1c4 = &__DT_PLTGOT" identifier = (pointer_expression "&__DT_PLTGOT" & identifier)) ;) (expression_statement "pcVar12 = getenv("COLLECT_NO_DEMANGLE");" (assignment_expression "pcVar12 = getenv("COLLECT_NO_DEMANGLE")" identifier = (call_expression "getenv("COLLECT_NO_DEMANGLE")" identifier (argument_list "("COLLECT_NO_DEMANGLE")" ( (string_literal ""COLLECT_NO_DEMANGLE"" " string_content ") )))) ;) (expression_statement "*(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0;" (assignment_expression "*(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0" (pointer_expression "*(bool *)(param_1 + 0x5939)" * (cast_expression "(bool *)(param_1 + 0x5939)" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5939)" ( (binary_expression "param_1 + 0x5939" identifier + number_literal) )))) = (binary_expression "pcVar12 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal))) ;) }) (else_clause "else {\n      *(undefined1 *)(param_1 + 0x5939) = 0;\n    }" else (compound_statement "{\n      *(undefined1 *)(param_1 + 0x5939) = 0;\n    }" { (expression_statement "*(undefined1 *)(param_1 + 0x5939) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x5939) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x5939)" * (cast_expression "(undefined1 *)(param_1 + 0x5939)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5939)" ( (binary_expression "param_1 + 0x5939" identifier + number_literal) )))) = number_literal) ;) }))) }) (else_clause "else {\n    pcVar12 = *(char **)(param_1 + 0xd50);\n    *(undefined1 *)(param_1 + 0x5939) = 1;\n    local_1c4 = &__DT_PLTGOT;\n    if (*pcVar12 != '\0') {\n      iVar14 = FUN_001ce8a0(pcVar12);\n      if (iVar14 == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }\n      FUN_001ce850(iVar14);\n    }\n  }" else (compound_statement "{\n    pcVar12 = *(char **)(param_1 + 0xd50);\n    *(undefined1 *)(param_1 + 0x5939) = 1;\n    local_1c4 = &__DT_PLTGOT;\n    if (*pcVar12 != '\0') {\n      iVar14 = FUN_001ce8a0(pcVar12);\n      if (iVar14 == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }\n      FUN_001ce850(iVar14);\n    }\n  }" { (expression_statement "pcVar12 = *(char **)(param_1 + 0xd50);" (assignment_expression "pcVar12 = *(char **)(param_1 + 0xd50)" identifier = (pointer_expression "*(char **)(param_1 + 0xd50)" * (cast_expression "(char **)(param_1 + 0xd50)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0xd50)" ( (binary_expression "param_1 + 0xd50" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 *)(param_1 + 0x5939) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x5939) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x5939)" * (cast_expression "(undefined1 *)(param_1 + 0x5939)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5939)" ( (binary_expression "param_1 + 0x5939" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_1c4 = &__DT_PLTGOT;" (assignment_expression "local_1c4 = &__DT_PLTGOT" identifier = (pointer_expression "&__DT_PLTGOT" & identifier)) ;) (if_statement "if (*pcVar12 != '\0') {\n      iVar14 = FUN_001ce8a0(pcVar12);\n      if (iVar14 == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }\n      FUN_001ce850(iVar14);\n    }" if (parenthesized_expression "(*pcVar12 != '\0')" ( (binary_expression "*pcVar12 != '\0'" (pointer_expression "*pcVar12" * identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      iVar14 = FUN_001ce8a0(pcVar12);\n      if (iVar14 == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }\n      FUN_001ce850(iVar14);\n    }" { (expression_statement "iVar14 = FUN_001ce8a0(pcVar12);" (assignment_expression "iVar14 = FUN_001ce8a0(pcVar12)" identifier = (call_expression "FUN_001ce8a0(pcVar12)" identifier (argument_list "(pcVar12)" ( identifier )))) ;) (if_statement "if (iVar14 == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }" { comment (expression_statement "FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);" (call_expression "FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21)" identifier (argument_list "(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21)" ( (binary_expression "local_1c4 + -0x400fe" identifier + number_literal) , identifier , identifier , identifier ))) ;) })) (expression_statement "FUN_001ce850(iVar14);" (call_expression "FUN_001ce850(iVar14)" identifier (argument_list "(iVar14)" ( identifier ))) ;) })) }))) (expression_statement "ppuVar4 = local_1c4;" (assignment_expression "ppuVar4 = local_1c4" identifier = identifier) ;) (expression_statement "bVar24 = false;" (assignment_expression "bVar24 = false" identifier = false) ;) (expression_statement "bVar22 = *(char *)(param_1 + 0x2870) == '\0';" (assignment_expression "bVar22 = *(char *)(param_1 + 0x2870) == '\0'" identifier = (binary_expression "*(char *)(param_1 + 0x2870) == '\0'" (pointer_expression "*(char *)(param_1 + 0x2870)" * (cast_expression "(char *)(param_1 + 0x2870)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2870)" ( (binary_expression "param_1 + 0x2870" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence '))) ;) (if_statement "if (!bVar22) {\n    pbVar19 = *(byte **)(param_1 + 0x2874);\n    iVar14 = 6;\n    pbVar20 = pbVar19;\n    pbVar21 = (byte *)((int)local_1c4 + -0xeb29e);\n    do {\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar22 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n      pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n    } while (bVar22);\n    bVar23 = false;\n    bVar24 = (!bVar24 && !bVar22) == bVar24;\n    if (bVar24) {\n      *(undefined4 *)(param_1 + 0x5a88) = 0;\n    }\n    else {\n      iVar14 = 8;\n      pbVar20 = pbVar19;\n      pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar24 = (!bVar23 && !bVar24) == bVar23;\n      if (bVar24) {\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }\n      else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }\n    }\n  }" if (parenthesized_expression "(!bVar22)" ( (unary_expression "!bVar22" ! identifier) )) (compound_statement "{\n    pbVar19 = *(byte **)(param_1 + 0x2874);\n    iVar14 = 6;\n    pbVar20 = pbVar19;\n    pbVar21 = (byte *)((int)local_1c4 + -0xeb29e);\n    do {\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar22 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n      pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n    } while (bVar22);\n    bVar23 = false;\n    bVar24 = (!bVar24 && !bVar22) == bVar24;\n    if (bVar24) {\n      *(undefined4 *)(param_1 + 0x5a88) = 0;\n    }\n    else {\n      iVar14 = 8;\n      pbVar20 = pbVar19;\n      pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar24 = (!bVar23 && !bVar24) == bVar23;\n      if (bVar24) {\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }\n      else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }\n    }\n  }" { (expression_statement "pbVar19 = *(byte **)(param_1 + 0x2874);" (assignment_expression "pbVar19 = *(byte **)(param_1 + 0x2874)" identifier = (pointer_expression "*(byte **)(param_1 + 0x2874)" * (cast_expression "(byte **)(param_1 + 0x2874)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x2874)" ( (binary_expression "param_1 + 0x2874" identifier + number_literal) ))))) ;) (expression_statement "iVar14 = 6;" (assignment_expression "iVar14 = 6" identifier = number_literal) ;) (expression_statement "pbVar20 = pbVar19;" (assignment_expression "pbVar20 = pbVar19" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)((int)local_1c4 + -0xeb29e);" (assignment_expression "pbVar21 = (byte *)((int)local_1c4 + -0xeb29e)" identifier = (cast_expression "(byte *)((int)local_1c4 + -0xeb29e)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1c4 + -0xeb29e)" ( (binary_expression "(int)local_1c4 + -0xeb29e" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (do_statement "do {\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar22 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n      pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n    } while (bVar22);" do (compound_statement "{\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar22 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n      pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n    }" { (if_statement "if (iVar14 == 0) break;" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" identifier = (binary_expression "iVar14 + -1" identifier + number_literal)) ;) (expression_statement "bVar24 = *pbVar20 < *pbVar21;" (assignment_expression "bVar24 = *pbVar20 < *pbVar21" identifier = (binary_expression "*pbVar20 < *pbVar21" (pointer_expression "*pbVar20" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar22 = *pbVar20 == *pbVar21;" (assignment_expression "bVar22 = *pbVar20 == *pbVar21" identifier = (binary_expression "*pbVar20 == *pbVar21" (pointer_expression "*pbVar20" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1" identifier = (binary_expression "pbVar20 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar25 * -2" identifier + (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1" identifier = (binary_expression "pbVar21 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar21 + (uint)bVar25 * -2" identifier + (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar22)" ( identifier )) ;) (expression_statement "bVar23 = false;" (assignment_expression "bVar23 = false" identifier = false) ;) (expression_statement "bVar24 = (!bVar24 && !bVar22) == bVar24;" (assignment_expression "bVar24 = (!bVar24 && !bVar22) == bVar24" identifier = (binary_expression "(!bVar24 && !bVar22) == bVar24" (parenthesized_expression "(!bVar24 && !bVar22)" ( (binary_expression "!bVar24 && !bVar22" (unary_expression "!bVar24" ! identifier) && (unary_expression "!bVar22" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar24) {\n      *(undefined4 *)(param_1 + 0x5a88) = 0;\n    }\n    else {\n      iVar14 = 8;\n      pbVar20 = pbVar19;\n      pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar24 = (!bVar23 && !bVar24) == bVar23;\n      if (bVar24) {\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }\n      else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }\n    }" if (parenthesized_expression "(bVar24)" ( identifier )) (compound_statement "{\n      *(undefined4 *)(param_1 + 0x5a88) = 0;\n    }" { (expression_statement "*(undefined4 *)(param_1 + 0x5a88) = 0;" (assignment_expression "*(undefined4 *)(param_1 + 0x5a88) = 0" (pointer_expression "*(undefined4 *)(param_1 + 0x5a88)" * (cast_expression "(undefined4 *)(param_1 + 0x5a88)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5a88)" ( (binary_expression "param_1 + 0x5a88" identifier + number_literal) )))) = number_literal) ;) }) (else_clause "else {\n      iVar14 = 8;\n      pbVar20 = pbVar19;\n      pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar24 = (!bVar23 && !bVar24) == bVar23;\n      if (bVar24) {\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }\n      else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }\n    }" else (compound_statement "{\n      iVar14 = 8;\n      pbVar20 = pbVar19;\n      pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar24 = (!bVar23 && !bVar24) == bVar23;\n      if (bVar24) {\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }\n      else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }\n    }" { (expression_statement "iVar14 = 8;" (assignment_expression "iVar14 = 8" identifier = number_literal) ;) (expression_statement "pbVar20 = pbVar19;" (assignment_expression "pbVar20 = pbVar19" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);" (assignment_expression "pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3)" identifier = (cast_expression "(byte *)((int)local_1c4 + -0x10e8f3)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1c4 + -0x10e8f3)" ( (binary_expression "(int)local_1c4 + -0x10e8f3" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (do_statement "do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      } while (bVar24);" do (compound_statement "{\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      }" { (if_statement "if (iVar14 == 0) break;" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" identifier = (binary_expression "iVar14 + -1" identifier + number_literal)) ;) (expression_statement "bVar23 = *pbVar20 < *pbVar21;" (assignment_expression "bVar23 = *pbVar20 < *pbVar21" identifier = (binary_expression "*pbVar20 < *pbVar21" (pointer_expression "*pbVar20" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar24 = *pbVar20 == *pbVar21;" (assignment_expression "bVar24 = *pbVar20 == *pbVar21" identifier = (binary_expression "*pbVar20 == *pbVar21" (pointer_expression "*pbVar20" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1" identifier = (binary_expression "pbVar20 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar25 * -2" identifier + (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1" identifier = (binary_expression "pbVar21 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar21 + (uint)bVar25 * -2" identifier + (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar24)" ( identifier )) ;) (expression_statement "bVar22 = false;" (assignment_expression "bVar22 = false" identifier = false) ;) (expression_statement "bVar24 = (!bVar23 && !bVar24) == bVar23;" (assignment_expression "bVar24 = (!bVar23 && !bVar24) == bVar23" identifier = (binary_expression "(!bVar23 && !bVar24) == bVar23" (parenthesized_expression "(!bVar23 && !bVar24)" ( (binary_expression "!bVar23 && !bVar24" (unary_expression "!bVar23" ! identifier) && (unary_expression "!bVar24" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar24) {\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }\n      else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }" if (parenthesized_expression "(bVar24)" ( identifier )) (compound_statement "{\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }" { (expression_statement "*(undefined4 *)(param_1 + 0x5a88) = 1;" (assignment_expression "*(undefined4 *)(param_1 + 0x5a88) = 1" (pointer_expression "*(undefined4 *)(param_1 + 0x5a88)" * (cast_expression "(undefined4 *)(param_1 + 0x5a88)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5a88)" ( (binary_expression "param_1 + 0x5a88" identifier + number_literal) )))) = number_literal) ;) }) (else_clause "else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }" else (compound_statement "{\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }" { (expression_statement "iVar14 = 5;" (assignment_expression "iVar14 = 5" identifier = number_literal) ;) (expression_statement "pbVar20 = pbVar19;" (assignment_expression "pbVar20 = pbVar19" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);" (assignment_expression "pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb)" identifier = (cast_expression "(byte *)((int)local_1c4 + -0x10e8eb)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1c4 + -0x10e8eb)" ( (binary_expression "(int)local_1c4 + -0x10e8eb" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (do_statement "do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);" do (compound_statement "{\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        }" { (if_statement "if (iVar14 == 0) break;" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" identifier = (binary_expression "iVar14 + -1" identifier + number_literal)) ;) (expression_statement "bVar22 = *pbVar20 < *pbVar21;" (assignment_expression "bVar22 = *pbVar20 < *pbVar21" identifier = (binary_expression "*pbVar20 < *pbVar21" (pointer_expression "*pbVar20" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar24 = *pbVar20 == *pbVar21;" (assignment_expression "bVar24 = *pbVar20 == *pbVar21" identifier = (binary_expression "*pbVar20 == *pbVar21" (pointer_expression "*pbVar20" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1" identifier = (binary_expression "pbVar20 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar25 * -2" identifier + (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1" identifier = (binary_expression "pbVar21 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar21 + (uint)bVar25 * -2" identifier + (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar24)" ( identifier )) ;) (expression_statement "bVar23 = false;" (assignment_expression "bVar23 = false" identifier = false) ;) (expression_statement "bVar24 = (!bVar22 && !bVar24) == bVar22;" (assignment_expression "bVar24 = (!bVar22 && !bVar24) == bVar22" identifier = (binary_expression "(!bVar22 && !bVar24) == bVar22" (parenthesized_expression "(!bVar22 && !bVar24)" ( (binary_expression "!bVar22 && !bVar24" (unary_expression "!bVar22" ! identifier) && (unary_expression "!bVar24" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }" if (parenthesized_expression "(bVar24)" ( identifier )) (compound_statement "{\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }" { (expression_statement "*(undefined4 *)(param_1 + 0x5a88) = 2;" (assignment_expression "*(undefined4 *)(param_1 + 0x5a88) = 2" (pointer_expression "*(undefined4 *)(param_1 + 0x5a88)" * (cast_expression "(undefined4 *)(param_1 + 0x5a88)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5a88)" ( (binary_expression "param_1 + 0x5a88" identifier + number_literal) )))) = number_literal) ;) }) (else_clause "else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }" else (compound_statement "{\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }" { (expression_statement "iVar14 = 6;" (assignment_expression "iVar14 = 6" identifier = number_literal) ;) (expression_statement "pbVar20 = (byte *)((int)local_1c4 + -0xea022);" (assignment_expression "pbVar20 = (byte *)((int)local_1c4 + -0xea022)" identifier = (cast_expression "(byte *)((int)local_1c4 + -0xea022)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1c4 + -0xea022)" ( (binary_expression "(int)local_1c4 + -0xea022" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (do_statement "do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);" do (compound_statement "{\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          }" { (if_statement "if (iVar14 == 0) break;" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" identifier = (binary_expression "iVar14 + -1" identifier + number_literal)) ;) (expression_statement "bVar23 = *pbVar19 < *pbVar20;" (assignment_expression "bVar23 = *pbVar19 < *pbVar20" identifier = (binary_expression "*pbVar19 < *pbVar20" (pointer_expression "*pbVar19" * identifier) < (pointer_expression "*pbVar20" * identifier))) ;) (expression_statement "bVar24 = *pbVar19 == *pbVar20;" (assignment_expression "bVar24 = *pbVar19 == *pbVar20" identifier = (binary_expression "*pbVar19 == *pbVar20" (pointer_expression "*pbVar19" * identifier) == (pointer_expression "*pbVar20" * identifier))) ;) (expression_statement "pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1" identifier = (binary_expression "pbVar19 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar19 + (uint)bVar25 * -2" identifier + (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1" identifier = (binary_expression "pbVar20 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar25 * -2" identifier + (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar24)" ( identifier )) ;) (if_statement "if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }" if (parenthesized_expression "((!bVar23 && !bVar24) == bVar23)" ( (binary_expression "(!bVar23 && !bVar24) == bVar23" (parenthesized_expression "(!bVar23 && !bVar24)" ( (binary_expression "!bVar23 && !bVar24" (unary_expression "!bVar23" ! identifier) && (unary_expression "!bVar24" ! identifier)) )) == identifier) )) (compound_statement "{\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }" { (expression_statement "*(undefined4 *)(param_1 + 0x5a88) = 3;" (assignment_expression "*(undefined4 *)(param_1 + 0x5a88) = 3" (pointer_expression "*(undefined4 *)(param_1 + 0x5a88)" * (cast_expression "(undefined4 *)(param_1 + 0x5a88)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5a88)" ( (binary_expression "param_1 + 0x5a88" identifier + number_literal) )))) = number_literal) ;) })) }))) }))) }))) })) (if_statement "if ((*(char *)(param_1 + 0x2401) != '\0') && (*(char *)(param_1 + 0x247c) == '\0')) {\n    *(undefined1 *)(param_1 + 0x247c) = 1;\n    *(undefined ***)(param_1 + 0x2480) = local_1c4 + -0x4062a;\n  }" if (parenthesized_expression "((*(char *)(param_1 + 0x2401) != '\0') && (*(char *)(param_1 + 0x247c) == '\0'))" ( (binary_expression "(*(char *)(param_1 + 0x2401) != '\0') && (*(char *)(param_1 + 0x247c) == '\0')" (parenthesized_expression "(*(char *)(param_1 + 0x2401) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x2401) != '\0'" (pointer_expression "*(char *)(param_1 + 0x2401)" * (cast_expression "(char *)(param_1 + 0x2401)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2401)" ( (binary_expression "param_1 + 0x2401" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(*(char *)(param_1 + 0x247c) == '\0')" ( (binary_expression "*(char *)(param_1 + 0x247c) == '\0'" (pointer_expression "*(char *)(param_1 + 0x247c)" * (cast_expression "(char *)(param_1 + 0x247c)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x247c)" ( (binary_expression "param_1 + 0x247c" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n    *(undefined1 *)(param_1 + 0x247c) = 1;\n    *(undefined ***)(param_1 + 0x2480) = local_1c4 + -0x4062a;\n  }" { (expression_statement "*(undefined1 *)(param_1 + 0x247c) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x247c) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x247c)" * (cast_expression "(undefined1 *)(param_1 + 0x247c)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x247c)" ( (binary_expression "param_1 + 0x247c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined ***)(param_1 + 0x2480) = local_1c4 + -0x4062a;" (assignment_expression "*(undefined ***)(param_1 + 0x2480) = local_1c4 + -0x4062a" (pointer_expression "*(undefined ***)(param_1 + 0x2480)" * (cast_expression "(undefined ***)(param_1 + 0x2480)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(param_1 + 0x2480)" ( (binary_expression "param_1 + 0x2480" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x4062a" identifier + number_literal)) ;) })) (if_statement "if ((*(char *)(param_1 + 0x24c1) != '\0') || (*(char *)(param_1 + 0x253d) != '\0')) {\n    *(undefined1 *)(param_1 + 0x5938) = 1;\n  }" if (parenthesized_expression "((*(char *)(param_1 + 0x24c1) != '\0') || (*(char *)(param_1 + 0x253d) != '\0'))" ( (binary_expression "(*(char *)(param_1 + 0x24c1) != '\0') || (*(char *)(param_1 + 0x253d) != '\0')" (parenthesized_expression "(*(char *)(param_1 + 0x24c1) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x24c1) != '\0'" (pointer_expression "*(char *)(param_1 + 0x24c1)" * (cast_expression "(char *)(param_1 + 0x24c1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x24c1)" ( (binary_expression "param_1 + 0x24c1" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(*(char *)(param_1 + 0x253d) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x253d) != '\0'" (pointer_expression "*(char *)(param_1 + 0x253d)" * (cast_expression "(char *)(param_1 + 0x253d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x253d)" ( (binary_expression "param_1 + 0x253d" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n    *(undefined1 *)(param_1 + 0x5938) = 1;\n  }" { (expression_statement "*(undefined1 *)(param_1 + 0x5938) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x5938) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x5938)" * (cast_expression "(undefined1 *)(param_1 + 0x5938)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5938)" ( (binary_expression "param_1 + 0x5938" identifier + number_literal) )))) = number_literal) ;) })) (expression_statement "iVar14 = *(int *)(param_1 + 0x3de8);" (assignment_expression "iVar14 = *(int *)(param_1 + 0x3de8)" identifier = (pointer_expression "*(int *)(param_1 + 0x3de8)" * (cast_expression "(int *)(param_1 + 0x3de8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3de8)" ( (binary_expression "param_1 + 0x3de8" identifier + number_literal) ))))) ;) (if_statement "if (0 < iVar14) {\n    if (*(int *)(param_1 + 0x3e2c) == 0) {\n      *(int *)(param_1 + 0x3e2c) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3e70) == 0) {\n      *(int *)(param_1 + 0x3e70) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3eb4) == 0) {\n      *(int *)(param_1 + 0x3eb4) = iVar14;\n    }\n  }" if (parenthesized_expression "(0 < iVar14)" ( (binary_expression "0 < iVar14" number_literal < identifier) )) (compound_statement "{\n    if (*(int *)(param_1 + 0x3e2c) == 0) {\n      *(int *)(param_1 + 0x3e2c) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3e70) == 0) {\n      *(int *)(param_1 + 0x3e70) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3eb4) == 0) {\n      *(int *)(param_1 + 0x3eb4) = iVar14;\n    }\n  }" { (if_statement "if (*(int *)(param_1 + 0x3e2c) == 0) {\n      *(int *)(param_1 + 0x3e2c) = iVar14;\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0x3e2c) == 0)" ( (binary_expression "*(int *)(param_1 + 0x3e2c) == 0" (pointer_expression "*(int *)(param_1 + 0x3e2c)" * (cast_expression "(int *)(param_1 + 0x3e2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3e2c)" ( (binary_expression "param_1 + 0x3e2c" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      *(int *)(param_1 + 0x3e2c) = iVar14;\n    }" { (expression_statement "*(int *)(param_1 + 0x3e2c) = iVar14;" (assignment_expression "*(int *)(param_1 + 0x3e2c) = iVar14" (pointer_expression "*(int *)(param_1 + 0x3e2c)" * (cast_expression "(int *)(param_1 + 0x3e2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3e2c)" ( (binary_expression "param_1 + 0x3e2c" identifier + number_literal) )))) = identifier) ;) })) (if_statement "if (*(int *)(param_1 + 0x3e70) == 0) {\n      *(int *)(param_1 + 0x3e70) = iVar14;\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0x3e70) == 0)" ( (binary_expression "*(int *)(param_1 + 0x3e70) == 0" (pointer_expression "*(int *)(param_1 + 0x3e70)" * (cast_expression "(int *)(param_1 + 0x3e70)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3e70)" ( (binary_expression "param_1 + 0x3e70" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      *(int *)(param_1 + 0x3e70) = iVar14;\n    }" { (expression_statement "*(int *)(param_1 + 0x3e70) = iVar14;" (assignment_expression "*(int *)(param_1 + 0x3e70) = iVar14" (pointer_expression "*(int *)(param_1 + 0x3e70)" * (cast_expression "(int *)(param_1 + 0x3e70)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3e70)" ( (binary_expression "param_1 + 0x3e70" identifier + number_literal) )))) = identifier) ;) })) (if_statement "if (*(int *)(param_1 + 0x3eb4) == 0) {\n      *(int *)(param_1 + 0x3eb4) = iVar14;\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0x3eb4) == 0)" ( (binary_expression "*(int *)(param_1 + 0x3eb4) == 0" (pointer_expression "*(int *)(param_1 + 0x3eb4)" * (cast_expression "(int *)(param_1 + 0x3eb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3eb4)" ( (binary_expression "param_1 + 0x3eb4" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      *(int *)(param_1 + 0x3eb4) = iVar14;\n    }" { (expression_statement "*(int *)(param_1 + 0x3eb4) = iVar14;" (assignment_expression "*(int *)(param_1 + 0x3eb4) = iVar14" (pointer_expression "*(int *)(param_1 + 0x3eb4)" * (cast_expression "(int *)(param_1 + 0x3eb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3eb4)" ( (binary_expression "param_1 + 0x3eb4" identifier + number_literal) )))) = identifier) ;) })) })) (expression_statement "local_1d4 = &local_1bc;" (assignment_expression "local_1d4 = &local_1bc" identifier = (pointer_expression "&local_1bc" & identifier)) ;) (expression_statement "local_1b4[0] = 0;" (assignment_expression "local_1b4[0] = 0" (subscript_expression "local_1b4[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "local_1ec = local_1b4;" (assignment_expression "local_1ec = local_1b4" identifier = identifier) ;) (expression_statement "local_1b8 = 0;" (assignment_expression "local_1b8 = 0" identifier = number_literal) ;) (expression_statement "local_1bc = local_1ec;" (assignment_expression "local_1bc = local_1ec" identifier = identifier) ;) (if_statement "if (*(char *)(param_1 + 0x4ca8) == '\0') {\n    if (*(char *)(param_1 + 0x2729) == '\0') {\n      local_1dc = local_12c;\n      local_1d0 = (undefined ***)&local_134;\n      local_134 = local_1dc;\n                    /* try { // try from 000e81b5 to 000e81b9 has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0);\n      local_1a4 = local_19c;\n                    /* try { // try from 000e81e2 to 000e81e6 has its CatchHandler @ 000e8ba5 */\n      FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_18c = 1;\n      if (local_1a0 == 0) {\n                    /* try { // try from 000e8607 to 000e860b has its CatchHandler @ 000e8b3e */\n        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      local_1d8 = param_1 + 0x2184;\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e8623 to 000e8627 has its CatchHandler @ 000e8b45 */\n        FUN_000eae90(local_1d8,piVar7,&local_1a4);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e823f to 000e8243 has its CatchHandler @ 000e8b45 */\n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_1a4 != local_19c) {\n        FUN_001e6db0(local_1a4);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    /* try { // try from 000e82c9 to 000e82cd has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0);\n      local_188 = local_180;\n                    /* try { // try from 000e82f6 to 000e82fa has its CatchHandler @ 000e8b7d */\n      FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_170 = 1;\n      if (local_184 == 0) {\n                    /* try { // try from 000e87a7 to 000e87ab has its CatchHandler @ 000e8b68 */\n        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e883b to 000e883f has its CatchHandler @ 000e8b6f */\n        FUN_000eae90(local_1d8,piVar7,&local_188);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e8345 to 000e8349 has its CatchHandler @ 000e8b6f */\n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_188 != local_180) {\n        FUN_001e6db0(local_188);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    /* try { // try from 000e83cf to 000e83d3 has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0);\n      local_16c = local_164;\n                    /* try { // try from 000e83fc to 000e8400 has its CatchHandler @ 000e8b76 */\n      FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_154 = 1;\n      if (local_168 == 0) {\n                    /* try { // try from 000e87cf to 000e87d3 has its CatchHandler @ 000e8b61 */\n        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e881b to 000e881f has its CatchHandler @ 000e8b4c */\n        FUN_000eae90(local_1d8,piVar7,&local_16c);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e844b to 000e844f has its CatchHandler @ 000e8b4c */\n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_16c != local_164) {\n        FUN_001e6db0(local_16c);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    /* try { // try from 000e84d5 to 000e84d9 has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0);\n      local_1e0 = local_148;\n      local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n      local_150 = local_1e0;\n                    /* try { // try from 000e850e to 000e8512 has its CatchHandler @ 000e8b1b */\n      FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_138 = 1;\n      if (local_14c == 0) {\n                    /* try { // try from 000e87fc to 000e8800 has its CatchHandler @ 000e8b5a */\n        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e8860 to 000e8864 has its CatchHandler @ 000e8b14 */\n        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e855d to 000e8561 has its CatchHandler @ 000e8b14 */\n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_150 != local_1e0) {\n        FUN_001e6db0(local_150);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      goto LAB_000e7f08;\n    }\n  }\n  else {\n    pcVar12 = *(char **)(param_1 + 0x4cac);\n    sVar9 = strlen(pcVar12);\n    ppuVar3 = local_1d4;\n                    /* try { // try from 000e7ede to 000e7f8e has its CatchHandler @ 000e8b37 */\n    FUN_001ef9f0(local_1d4,0,0,pcVar12,sVar9);\n    iVar14 = FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6);\n    if (iVar14 == 0) {\n      uVar6 = local_1b8;\n      if (2 < local_1b8) {\n        uVar6 = 2;\n      }\n                    /* try { // try from 000e877d to 000e8781 has its CatchHandler @ 000e8b37 */\n      FUN_001eebf0(local_1d4,0,uVar6);\n    }\nLAB_000e7f08:\n    uVar6 = 0;\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n    if (local_1b8 != 0) {\n      do {\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    /* WARNING: Subroutine does not return */\n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */\n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      } while( true );\n    }\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0x4ca8) == '\0')" ( (binary_expression "*(char *)(param_1 + 0x4ca8) == '\0'" (pointer_expression "*(char *)(param_1 + 0x4ca8)" * (cast_expression "(char *)(param_1 + 0x4ca8)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x4ca8)" ( (binary_expression "param_1 + 0x4ca8" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (*(char *)(param_1 + 0x2729) == '\0') {\n      local_1dc = local_12c;\n      local_1d0 = (undefined ***)&local_134;\n      local_134 = local_1dc;\n                    /* try { // try from 000e81b5 to 000e81b9 has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0);\n      local_1a4 = local_19c;\n                    /* try { // try from 000e81e2 to 000e81e6 has its CatchHandler @ 000e8ba5 */\n      FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_18c = 1;\n      if (local_1a0 == 0) {\n                    /* try { // try from 000e8607 to 000e860b has its CatchHandler @ 000e8b3e */\n        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      local_1d8 = param_1 + 0x2184;\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e8623 to 000e8627 has its CatchHandler @ 000e8b45 */\n        FUN_000eae90(local_1d8,piVar7,&local_1a4);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e823f to 000e8243 has its CatchHandler @ 000e8b45 */\n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_1a4 != local_19c) {\n        FUN_001e6db0(local_1a4);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    /* try { // try from 000e82c9 to 000e82cd has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0);\n      local_188 = local_180;\n                    /* try { // try from 000e82f6 to 000e82fa has its CatchHandler @ 000e8b7d */\n      FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_170 = 1;\n      if (local_184 == 0) {\n                    /* try { // try from 000e87a7 to 000e87ab has its CatchHandler @ 000e8b68 */\n        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e883b to 000e883f has its CatchHandler @ 000e8b6f */\n        FUN_000eae90(local_1d8,piVar7,&local_188);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e8345 to 000e8349 has its CatchHandler @ 000e8b6f */\n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_188 != local_180) {\n        FUN_001e6db0(local_188);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    /* try { // try from 000e83cf to 000e83d3 has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0);\n      local_16c = local_164;\n                    /* try { // try from 000e83fc to 000e8400 has its CatchHandler @ 000e8b76 */\n      FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_154 = 1;\n      if (local_168 == 0) {\n                    /* try { // try from 000e87cf to 000e87d3 has its CatchHandler @ 000e8b61 */\n        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e881b to 000e881f has its CatchHandler @ 000e8b4c */\n        FUN_000eae90(local_1d8,piVar7,&local_16c);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e844b to 000e844f has its CatchHandler @ 000e8b4c */\n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_16c != local_164) {\n        FUN_001e6db0(local_16c);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    /* try { // try from 000e84d5 to 000e84d9 has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0);\n      local_1e0 = local_148;\n      local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n      local_150 = local_1e0;\n                    /* try { // try from 000e850e to 000e8512 has its CatchHandler @ 000e8b1b */\n      FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_138 = 1;\n      if (local_14c == 0) {\n                    /* try { // try from 000e87fc to 000e8800 has its CatchHandler @ 000e8b5a */\n        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e8860 to 000e8864 has its CatchHandler @ 000e8b14 */\n        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e855d to 000e8561 has its CatchHandler @ 000e8b14 */\n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_150 != local_1e0) {\n        FUN_001e6db0(local_150);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      goto LAB_000e7f08;\n    }\n  }" { (if_statement "if (*(char *)(param_1 + 0x2729) == '\0') {\n      local_1dc = local_12c;\n      local_1d0 = (undefined ***)&local_134;\n      local_134 = local_1dc;\n                    /* try { // try from 000e81b5 to 000e81b9 has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0);\n      local_1a4 = local_19c;\n                    /* try { // try from 000e81e2 to 000e81e6 has its CatchHandler @ 000e8ba5 */\n      FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_18c = 1;\n      if (local_1a0 == 0) {\n                    /* try { // try from 000e8607 to 000e860b has its CatchHandler @ 000e8b3e */\n        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      local_1d8 = param_1 + 0x2184;\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e8623 to 000e8627 has its CatchHandler @ 000e8b45 */\n        FUN_000eae90(local_1d8,piVar7,&local_1a4);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e823f to 000e8243 has its CatchHandler @ 000e8b45 */\n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_1a4 != local_19c) {\n        FUN_001e6db0(local_1a4);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    /* try { // try from 000e82c9 to 000e82cd has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0);\n      local_188 = local_180;\n                    /* try { // try from 000e82f6 to 000e82fa has its CatchHandler @ 000e8b7d */\n      FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_170 = 1;\n      if (local_184 == 0) {\n                    /* try { // try from 000e87a7 to 000e87ab has its CatchHandler @ 000e8b68 */\n        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e883b to 000e883f has its CatchHandler @ 000e8b6f */\n        FUN_000eae90(local_1d8,piVar7,&local_188);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e8345 to 000e8349 has its CatchHandler @ 000e8b6f */\n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_188 != local_180) {\n        FUN_001e6db0(local_188);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    /* try { // try from 000e83cf to 000e83d3 has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0);\n      local_16c = local_164;\n                    /* try { // try from 000e83fc to 000e8400 has its CatchHandler @ 000e8b76 */\n      FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_154 = 1;\n      if (local_168 == 0) {\n                    /* try { // try from 000e87cf to 000e87d3 has its CatchHandler @ 000e8b61 */\n        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e881b to 000e881f has its CatchHandler @ 000e8b4c */\n        FUN_000eae90(local_1d8,piVar7,&local_16c);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e844b to 000e844f has its CatchHandler @ 000e8b4c */\n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_16c != local_164) {\n        FUN_001e6db0(local_16c);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    /* try { // try from 000e84d5 to 000e84d9 has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0);\n      local_1e0 = local_148;\n      local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n      local_150 = local_1e0;\n                    /* try { // try from 000e850e to 000e8512 has its CatchHandler @ 000e8b1b */\n      FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_138 = 1;\n      if (local_14c == 0) {\n                    /* try { // try from 000e87fc to 000e8800 has its CatchHandler @ 000e8b5a */\n        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e8860 to 000e8864 has its CatchHandler @ 000e8b14 */\n        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e855d to 000e8561 has its CatchHandler @ 000e8b14 */\n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_150 != local_1e0) {\n        FUN_001e6db0(local_150);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      goto LAB_000e7f08;\n    }" if (parenthesized_expression "(*(char *)(param_1 + 0x2729) == '\0')" ( (binary_expression "*(char *)(param_1 + 0x2729) == '\0'" (pointer_expression "*(char *)(param_1 + 0x2729)" * (cast_expression "(char *)(param_1 + 0x2729)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2729)" ( (binary_expression "param_1 + 0x2729" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      local_1dc = local_12c;\n      local_1d0 = (undefined ***)&local_134;\n      local_134 = local_1dc;\n                    /* try { // try from 000e81b5 to 000e81b9 has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0);\n      local_1a4 = local_19c;\n                    /* try { // try from 000e81e2 to 000e81e6 has its CatchHandler @ 000e8ba5 */\n      FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_18c = 1;\n      if (local_1a0 == 0) {\n                    /* try { // try from 000e8607 to 000e860b has its CatchHandler @ 000e8b3e */\n        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      local_1d8 = param_1 + 0x2184;\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e8623 to 000e8627 has its CatchHandler @ 000e8b45 */\n        FUN_000eae90(local_1d8,piVar7,&local_1a4);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e823f to 000e8243 has its CatchHandler @ 000e8b45 */\n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_1a4 != local_19c) {\n        FUN_001e6db0(local_1a4);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    /* try { // try from 000e82c9 to 000e82cd has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0);\n      local_188 = local_180;\n                    /* try { // try from 000e82f6 to 000e82fa has its CatchHandler @ 000e8b7d */\n      FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_170 = 1;\n      if (local_184 == 0) {\n                    /* try { // try from 000e87a7 to 000e87ab has its CatchHandler @ 000e8b68 */\n        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e883b to 000e883f has its CatchHandler @ 000e8b6f */\n        FUN_000eae90(local_1d8,piVar7,&local_188);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e8345 to 000e8349 has its CatchHandler @ 000e8b6f */\n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_188 != local_180) {\n        FUN_001e6db0(local_188);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    /* try { // try from 000e83cf to 000e83d3 has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0);\n      local_16c = local_164;\n                    /* try { // try from 000e83fc to 000e8400 has its CatchHandler @ 000e8b76 */\n      FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_154 = 1;\n      if (local_168 == 0) {\n                    /* try { // try from 000e87cf to 000e87d3 has its CatchHandler @ 000e8b61 */\n        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e881b to 000e881f has its CatchHandler @ 000e8b4c */\n        FUN_000eae90(local_1d8,piVar7,&local_16c);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e844b to 000e844f has its CatchHandler @ 000e8b4c */\n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_16c != local_164) {\n        FUN_001e6db0(local_16c);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    /* try { // try from 000e84d5 to 000e84d9 has its CatchHandler @ 000e8b37 */\n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0);\n      local_1e0 = local_148;\n      local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n      local_150 = local_1e0;\n                    /* try { // try from 000e850e to 000e8512 has its CatchHandler @ 000e8b1b */\n      FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_138 = 1;\n      if (local_14c == 0) {\n                    /* try { // try from 000e87fc to 000e8800 has its CatchHandler @ 000e8b5a */\n        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e8860 to 000e8864 has its CatchHandler @ 000e8b14 */\n        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e855d to 000e8561 has its CatchHandler @ 000e8b14 */\n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_150 != local_1e0) {\n        FUN_001e6db0(local_150);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      goto LAB_000e7f08;\n    }" { (expression_statement "local_1dc = local_12c;" (assignment_expression "local_1dc = local_12c" identifier = identifier) ;) (expression_statement "local_1d0 = (undefined ***)&local_134;" (assignment_expression "local_1d0 = (undefined ***)&local_134" identifier = (cast_expression "(undefined ***)&local_134" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (pointer_expression "&local_134" & identifier))) ;) (expression_statement "local_134 = local_1dc;" (assignment_expression "local_134 = local_1dc" identifier = identifier) ;) comment (expression_statement "FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0);" (call_expression "FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0)" identifier (argument_list "(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0)" ( identifier , (binary_expression "(int)local_1c4 + -0x1003bf" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , (binary_expression "(int)local_1c4 + -0x1003b2" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , number_literal ))) ;) (expression_statement "local_1a4 = local_19c;" (assignment_expression "local_1a4 = local_19c" identifier = identifier) ;) comment (expression_statement "FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0);" (call_expression "FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0)" identifier (argument_list "(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0)" ( (pointer_expression "&local_1a4" & identifier) , identifier , (cast_expression "(undefined *)(local_130 + (int)local_134)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_130 + (int)local_134)" ( (binary_expression "local_130 + (int)local_134" identifier + (cast_expression "(int)local_134" ( (type_descriptor "int" primitive_type) ) identifier)) ))) , number_literal ))) ;) (expression_statement "local_18c = 1;" (assignment_expression "local_18c = 1" identifier = number_literal) ;) (if_statement "if (local_1a0 == 0) {\n                    /* try { // try from 000e8607 to 000e860b has its CatchHandler @ 000e8b3e */\n        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);\n      }" if (parenthesized_expression "(local_1a0 == 0)" ( (binary_expression "local_1a0 == 0" identifier == number_literal) )) (compound_statement "{\n                    /* try { // try from 000e8607 to 000e860b has its CatchHandler @ 000e8b3e */\n        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);\n      }" { comment (expression_statement "FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);" (call_expression "FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1)" identifier (argument_list "(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1)" ( (pointer_expression "&local_1a4" & identifier) , number_literal , number_literal , (binary_expression "(int)local_1c4 + -0x1013b5" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , number_literal ))) ;) })) (expression_statement "local_1d8 = param_1 + 0x2184;" (assignment_expression "local_1d8 = param_1 + 0x2184" identifier = (binary_expression "param_1 + 0x2184" identifier + number_literal)) ;) (expression_statement "piVar7 = *(int **)(param_1 + 0x2188);" (assignment_expression "piVar7 = *(int **)(param_1 + 0x2188)" identifier = (pointer_expression "*(int **)(param_1 + 0x2188)" * (cast_expression "(int **)(param_1 + 0x2188)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) ))))) ;) (if_statement "if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e8623 to 000e8627 has its CatchHandler @ 000e8b45 */\n        FUN_000eae90(local_1d8,piVar7,&local_1a4);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e823f to 000e8243 has its CatchHandler @ 000e8b45 */\n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" if (parenthesized_expression "(piVar7 == *(int **)(param_1 + 0x218c))" ( (binary_expression "piVar7 == *(int **)(param_1 + 0x218c)" identifier == (pointer_expression "*(int **)(param_1 + 0x218c)" * (cast_expression "(int **)(param_1 + 0x218c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x218c)" ( (binary_expression "param_1 + 0x218c" identifier + number_literal) ))))) )) (compound_statement "{\n                    /* try { // try from 000e8623 to 000e8627 has its CatchHandler @ 000e8b45 */\n        FUN_000eae90(local_1d8,piVar7,&local_1a4);\n      }" { comment (expression_statement "FUN_000eae90(local_1d8,piVar7,&local_1a4);" (call_expression "FUN_000eae90(local_1d8,piVar7,&local_1a4)" identifier (argument_list "(local_1d8,piVar7,&local_1a4)" ( identifier , identifier , (pointer_expression "&local_1a4" & identifier) ))) ;) }) (else_clause "else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e823f to 000e8243 has its CatchHandler @ 000e8b45 */\n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" else (compound_statement "{\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e823f to 000e8243 has its CatchHandler @ 000e8b45 */\n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" { (expression_statement "*piVar7 = (int)(piVar7 + 2);" (assignment_expression "*piVar7 = (int)(piVar7 + 2)" (pointer_expression "*piVar7" * identifier) = (cast_expression "(int)(piVar7 + 2)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar7 + 2)" ( (binary_expression "piVar7 + 2" identifier + number_literal) )))) ;) comment (expression_statement "FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);" (call_expression "FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0)" identifier (argument_list "(piVar7,local_1a4,local_1a4 + local_1a0,0)" ( identifier , identifier , (binary_expression "local_1a4 + local_1a0" identifier + identifier) , number_literal ))) ;) (expression_statement "*(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;" (assignment_expression "*(undefined1 *)(piVar7 + 6) = (undefined1)local_18c" (pointer_expression "*(undefined1 *)(piVar7 + 6)" * (cast_expression "(undefined1 *)(piVar7 + 6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7 + 6)" ( (binary_expression "piVar7 + 6" identifier + number_literal) )))) = (cast_expression "(undefined1)local_18c" ( (type_descriptor "undefined1" type_identifier) ) identifier)) ;) (expression_statement "*(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;" (assignment_expression "*(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_" (pointer_expression "*(undefined1 *)((int)piVar7 + 0x19)" * (cast_expression "(undefined1 *)((int)piVar7 + 0x19)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar7 + 0x19)" ( (binary_expression "(int)piVar7 + 0x19" (cast_expression "(int)piVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (field_expression "local_18c._1_1_" identifier . field_identifier)) ;) (expression_statement "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;" (assignment_expression "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" * (cast_expression "(int *)(param_1 + 0x2188)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) )))) = (binary_expression "*(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" * (cast_expression "(int *)(param_1 + 0x2188)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) )))) + number_literal)) ;) }))) (if_statement "if (local_1a4 != local_19c) {\n        FUN_001e6db0(local_1a4);\n      }" if (parenthesized_expression "(local_1a4 != local_19c)" ( (binary_expression "local_1a4 != local_19c" identifier != identifier) )) (compound_statement "{\n        FUN_001e6db0(local_1a4);\n      }" { (expression_statement "FUN_001e6db0(local_1a4);" (call_expression "FUN_001e6db0(local_1a4)" identifier (argument_list "(local_1a4)" ( identifier ))) ;) })) (if_statement "if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }" if (parenthesized_expression "(local_134 != local_1dc)" ( (binary_expression "local_134 != local_1dc" identifier != identifier) )) (compound_statement "{\n        FUN_001e6db0(local_134);\n      }" { (expression_statement "FUN_001e6db0(local_134);" (call_expression "FUN_001e6db0(local_134)" identifier (argument_list "(local_134)" ( identifier ))) ;) })) (expression_statement "local_134 = local_1dc;" (assignment_expression "local_134 = local_1dc" identifier = identifier) ;) comment (expression_statement "FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0);" (call_expression "FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0)" identifier (argument_list "(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0)" ( identifier , (binary_expression "(int)local_1c4 + -0x1003c3" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , (binary_expression "(int)local_1c4 + -0x1003b2" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , number_literal ))) ;) (expression_statement "local_188 = local_180;" (assignment_expression "local_188 = local_180" identifier = identifier) ;) comment (expression_statement "FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0);" (call_expression "FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0)" identifier (argument_list "(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0)" ( (pointer_expression "&local_188" & identifier) , identifier , (cast_expression "(undefined *)(local_130 + (int)local_134)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_130 + (int)local_134)" ( (binary_expression "local_130 + (int)local_134" identifier + (cast_expression "(int)local_134" ( (type_descriptor "int" primitive_type) ) identifier)) ))) , number_literal ))) ;) (expression_statement "local_170 = 1;" (assignment_expression "local_170 = 1" identifier = number_literal) ;) (if_statement "if (local_184 == 0) {\n                    /* try { // try from 000e87a7 to 000e87ab has its CatchHandler @ 000e8b68 */\n        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);\n      }" if (parenthesized_expression "(local_184 == 0)" ( (binary_expression "local_184 == 0" identifier == number_literal) )) (compound_statement "{\n                    /* try { // try from 000e87a7 to 000e87ab has its CatchHandler @ 000e8b68 */\n        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);\n      }" { comment (expression_statement "FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);" (call_expression "FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1)" identifier (argument_list "(&local_188,0,0,(int)local_1c4 + -0x1013b5,1)" ( (pointer_expression "&local_188" & identifier) , number_literal , number_literal , (binary_expression "(int)local_1c4 + -0x1013b5" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , number_literal ))) ;) })) (expression_statement "piVar7 = *(int **)(param_1 + 0x2188);" (assignment_expression "piVar7 = *(int **)(param_1 + 0x2188)" identifier = (pointer_expression "*(int **)(param_1 + 0x2188)" * (cast_expression "(int **)(param_1 + 0x2188)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) ))))) ;) (if_statement "if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e883b to 000e883f has its CatchHandler @ 000e8b6f */\n        FUN_000eae90(local_1d8,piVar7,&local_188);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e8345 to 000e8349 has its CatchHandler @ 000e8b6f */\n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" if (parenthesized_expression "(piVar7 == *(int **)(param_1 + 0x218c))" ( (binary_expression "piVar7 == *(int **)(param_1 + 0x218c)" identifier == (pointer_expression "*(int **)(param_1 + 0x218c)" * (cast_expression "(int **)(param_1 + 0x218c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x218c)" ( (binary_expression "param_1 + 0x218c" identifier + number_literal) ))))) )) (compound_statement "{\n                    /* try { // try from 000e883b to 000e883f has its CatchHandler @ 000e8b6f */\n        FUN_000eae90(local_1d8,piVar7,&local_188);\n      }" { comment (expression_statement "FUN_000eae90(local_1d8,piVar7,&local_188);" (call_expression "FUN_000eae90(local_1d8,piVar7,&local_188)" identifier (argument_list "(local_1d8,piVar7,&local_188)" ( identifier , identifier , (pointer_expression "&local_188" & identifier) ))) ;) }) (else_clause "else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e8345 to 000e8349 has its CatchHandler @ 000e8b6f */\n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" else (compound_statement "{\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e8345 to 000e8349 has its CatchHandler @ 000e8b6f */\n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" { (expression_statement "*piVar7 = (int)(piVar7 + 2);" (assignment_expression "*piVar7 = (int)(piVar7 + 2)" (pointer_expression "*piVar7" * identifier) = (cast_expression "(int)(piVar7 + 2)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar7 + 2)" ( (binary_expression "piVar7 + 2" identifier + number_literal) )))) ;) comment (expression_statement "FUN_000513a0(piVar7,local_188,local_188 + local_184,0);" (call_expression "FUN_000513a0(piVar7,local_188,local_188 + local_184,0)" identifier (argument_list "(piVar7,local_188,local_188 + local_184,0)" ( identifier , identifier , (binary_expression "local_188 + local_184" identifier + identifier) , number_literal ))) ;) (expression_statement "*(undefined1 *)(piVar7 + 6) = (undefined1)local_170;" (assignment_expression "*(undefined1 *)(piVar7 + 6) = (undefined1)local_170" (pointer_expression "*(undefined1 *)(piVar7 + 6)" * (cast_expression "(undefined1 *)(piVar7 + 6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7 + 6)" ( (binary_expression "piVar7 + 6" identifier + number_literal) )))) = (cast_expression "(undefined1)local_170" ( (type_descriptor "undefined1" type_identifier) ) identifier)) ;) (expression_statement "*(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;" (assignment_expression "*(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_" (pointer_expression "*(undefined1 *)((int)piVar7 + 0x19)" * (cast_expression "(undefined1 *)((int)piVar7 + 0x19)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar7 + 0x19)" ( (binary_expression "(int)piVar7 + 0x19" (cast_expression "(int)piVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (field_expression "local_170._1_1_" identifier . field_identifier)) ;) (expression_statement "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;" (assignment_expression "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" * (cast_expression "(int *)(param_1 + 0x2188)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) )))) = (binary_expression "*(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" * (cast_expression "(int *)(param_1 + 0x2188)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) )))) + number_literal)) ;) }))) (if_statement "if (local_188 != local_180) {\n        FUN_001e6db0(local_188);\n      }" if (parenthesized_expression "(local_188 != local_180)" ( (binary_expression "local_188 != local_180" identifier != identifier) )) (compound_statement "{\n        FUN_001e6db0(local_188);\n      }" { (expression_statement "FUN_001e6db0(local_188);" (call_expression "FUN_001e6db0(local_188)" identifier (argument_list "(local_188)" ( identifier ))) ;) })) (if_statement "if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }" if (parenthesized_expression "(local_134 != local_1dc)" ( (binary_expression "local_134 != local_1dc" identifier != identifier) )) (compound_statement "{\n        FUN_001e6db0(local_134);\n      }" { (expression_statement "FUN_001e6db0(local_134);" (call_expression "FUN_001e6db0(local_134)" identifier (argument_list "(local_134)" ( identifier ))) ;) })) (expression_statement "local_134 = local_1dc;" (assignment_expression "local_134 = local_1dc" identifier = identifier) ;) comment (expression_statement "FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0);" (call_expression "FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0)" identifier (argument_list "(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0)" ( identifier , (binary_expression "(int)local_1c4 + -0x1003ad" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , (binary_expression "(int)local_1c4 + -0x1003a9" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , number_literal ))) ;) (expression_statement "local_16c = local_164;" (assignment_expression "local_16c = local_164" identifier = identifier) ;) comment (expression_statement "FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0);" (call_expression "FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0)" identifier (argument_list "(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0)" ( (pointer_expression "&local_16c" & identifier) , identifier , (cast_expression "(undefined *)(local_130 + (int)local_134)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_130 + (int)local_134)" ( (binary_expression "local_130 + (int)local_134" identifier + (cast_expression "(int)local_134" ( (type_descriptor "int" primitive_type) ) identifier)) ))) , number_literal ))) ;) (expression_statement "local_154 = 1;" (assignment_expression "local_154 = 1" identifier = number_literal) ;) (if_statement "if (local_168 == 0) {\n                    /* try { // try from 000e87cf to 000e87d3 has its CatchHandler @ 000e8b61 */\n        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);\n      }" if (parenthesized_expression "(local_168 == 0)" ( (binary_expression "local_168 == 0" identifier == number_literal) )) (compound_statement "{\n                    /* try { // try from 000e87cf to 000e87d3 has its CatchHandler @ 000e8b61 */\n        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);\n      }" { comment (expression_statement "FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);" (call_expression "FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1)" identifier (argument_list "(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1)" ( (pointer_expression "&local_16c" & identifier) , number_literal , number_literal , (binary_expression "(int)local_1c4 + -0x1013b5" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , number_literal ))) ;) })) (expression_statement "piVar7 = *(int **)(param_1 + 0x2188);" (assignment_expression "piVar7 = *(int **)(param_1 + 0x2188)" identifier = (pointer_expression "*(int **)(param_1 + 0x2188)" * (cast_expression "(int **)(param_1 + 0x2188)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) ))))) ;) (if_statement "if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e881b to 000e881f has its CatchHandler @ 000e8b4c */\n        FUN_000eae90(local_1d8,piVar7,&local_16c);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e844b to 000e844f has its CatchHandler @ 000e8b4c */\n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" if (parenthesized_expression "(piVar7 == *(int **)(param_1 + 0x218c))" ( (binary_expression "piVar7 == *(int **)(param_1 + 0x218c)" identifier == (pointer_expression "*(int **)(param_1 + 0x218c)" * (cast_expression "(int **)(param_1 + 0x218c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x218c)" ( (binary_expression "param_1 + 0x218c" identifier + number_literal) ))))) )) (compound_statement "{\n                    /* try { // try from 000e881b to 000e881f has its CatchHandler @ 000e8b4c */\n        FUN_000eae90(local_1d8,piVar7,&local_16c);\n      }" { comment (expression_statement "FUN_000eae90(local_1d8,piVar7,&local_16c);" (call_expression "FUN_000eae90(local_1d8,piVar7,&local_16c)" identifier (argument_list "(local_1d8,piVar7,&local_16c)" ( identifier , identifier , (pointer_expression "&local_16c" & identifier) ))) ;) }) (else_clause "else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e844b to 000e844f has its CatchHandler @ 000e8b4c */\n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" else (compound_statement "{\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e844b to 000e844f has its CatchHandler @ 000e8b4c */\n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" { (expression_statement "*piVar7 = (int)(piVar7 + 2);" (assignment_expression "*piVar7 = (int)(piVar7 + 2)" (pointer_expression "*piVar7" * identifier) = (cast_expression "(int)(piVar7 + 2)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar7 + 2)" ( (binary_expression "piVar7 + 2" identifier + number_literal) )))) ;) comment (expression_statement "FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);" (call_expression "FUN_000513a0(piVar7,local_16c,local_16c + local_168,0)" identifier (argument_list "(piVar7,local_16c,local_16c + local_168,0)" ( identifier , identifier , (binary_expression "local_16c + local_168" identifier + identifier) , number_literal ))) ;) (expression_statement "*(undefined1 *)(piVar7 + 6) = (undefined1)local_154;" (assignment_expression "*(undefined1 *)(piVar7 + 6) = (undefined1)local_154" (pointer_expression "*(undefined1 *)(piVar7 + 6)" * (cast_expression "(undefined1 *)(piVar7 + 6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7 + 6)" ( (binary_expression "piVar7 + 6" identifier + number_literal) )))) = (cast_expression "(undefined1)local_154" ( (type_descriptor "undefined1" type_identifier) ) identifier)) ;) (expression_statement "*(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;" (assignment_expression "*(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_" (pointer_expression "*(undefined1 *)((int)piVar7 + 0x19)" * (cast_expression "(undefined1 *)((int)piVar7 + 0x19)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar7 + 0x19)" ( (binary_expression "(int)piVar7 + 0x19" (cast_expression "(int)piVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (field_expression "local_154._1_1_" identifier . field_identifier)) ;) (expression_statement "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;" (assignment_expression "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" * (cast_expression "(int *)(param_1 + 0x2188)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) )))) = (binary_expression "*(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" * (cast_expression "(int *)(param_1 + 0x2188)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) )))) + number_literal)) ;) }))) (if_statement "if (local_16c != local_164) {\n        FUN_001e6db0(local_16c);\n      }" if (parenthesized_expression "(local_16c != local_164)" ( (binary_expression "local_16c != local_164" identifier != identifier) )) (compound_statement "{\n        FUN_001e6db0(local_16c);\n      }" { (expression_statement "FUN_001e6db0(local_16c);" (call_expression "FUN_001e6db0(local_16c)" identifier (argument_list "(local_16c)" ( identifier ))) ;) })) (if_statement "if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }" if (parenthesized_expression "(local_134 != local_1dc)" ( (binary_expression "local_134 != local_1dc" identifier != identifier) )) (compound_statement "{\n        FUN_001e6db0(local_134);\n      }" { (expression_statement "FUN_001e6db0(local_134);" (call_expression "FUN_001e6db0(local_134)" identifier (argument_list "(local_134)" ( identifier ))) ;) })) (expression_statement "local_134 = local_1dc;" (assignment_expression "local_134 = local_1dc" identifier = identifier) ;) comment (expression_statement "FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0);" (call_expression "FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0)" identifier (argument_list "(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0)" ( identifier , (binary_expression "(int)local_1c4 + -0x1003b1" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , (binary_expression "(int)local_1c4 + -0x1003a9" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , number_literal ))) ;) (expression_statement "local_1e0 = local_148;" (assignment_expression "local_1e0 = local_148" identifier = identifier) ;) (expression_statement "local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);" (assignment_expression "local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150)" identifier = (cast_expression "(double)CONCAT44(local_1cc._4_4_,&local_150)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(local_1cc._4_4_,&local_150)" identifier (argument_list "(local_1cc._4_4_,&local_150)" ( (field_expression "local_1cc._4_4_" identifier . field_identifier) , (pointer_expression "&local_150" & identifier) ))))) ;) (expression_statement "local_150 = local_1e0;" (assignment_expression "local_150 = local_1e0" identifier = identifier) ;) comment (expression_statement "FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0);" (call_expression "FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0)" identifier (argument_list "(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0)" ( (pointer_expression "&local_150" & identifier) , identifier , (cast_expression "(undefined *)(local_130 + (int)local_134)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_130 + (int)local_134)" ( (binary_expression "local_130 + (int)local_134" identifier + (cast_expression "(int)local_134" ( (type_descriptor "int" primitive_type) ) identifier)) ))) , number_literal ))) ;) (expression_statement "local_138 = 1;" (assignment_expression "local_138 = 1" identifier = number_literal) ;) (if_statement "if (local_14c == 0) {\n                    /* try { // try from 000e87fc to 000e8800 has its CatchHandler @ 000e8b5a */\n        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);\n      }" if (parenthesized_expression "(local_14c == 0)" ( (binary_expression "local_14c == 0" identifier == number_literal) )) (compound_statement "{\n                    /* try { // try from 000e87fc to 000e8800 has its CatchHandler @ 000e8b5a */\n        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);\n      }" { comment (expression_statement "FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);" (call_expression "FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1)" identifier (argument_list "(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1)" ( (field_expression "local_1cc._0_4_" identifier . field_identifier) , number_literal , number_literal , (binary_expression "(int)local_1c4 + -0x1013b5" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , number_literal ))) ;) })) (expression_statement "piVar7 = *(int **)(param_1 + 0x2188);" (assignment_expression "piVar7 = *(int **)(param_1 + 0x2188)" identifier = (pointer_expression "*(int **)(param_1 + 0x2188)" * (cast_expression "(int **)(param_1 + 0x2188)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) ))))) ;) (if_statement "if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e8860 to 000e8864 has its CatchHandler @ 000e8b14 */\n        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e855d to 000e8561 has its CatchHandler @ 000e8b14 */\n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" if (parenthesized_expression "(piVar7 == *(int **)(param_1 + 0x218c))" ( (binary_expression "piVar7 == *(int **)(param_1 + 0x218c)" identifier == (pointer_expression "*(int **)(param_1 + 0x218c)" * (cast_expression "(int **)(param_1 + 0x218c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x218c)" ( (binary_expression "param_1 + 0x218c" identifier + number_literal) ))))) )) (compound_statement "{\n                    /* try { // try from 000e8860 to 000e8864 has its CatchHandler @ 000e8b14 */\n        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);\n      }" { comment (expression_statement "FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);" (call_expression "FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_)" identifier (argument_list "(local_1d8,piVar7,local_1cc._0_4_)" ( identifier , identifier , (field_expression "local_1cc._0_4_" identifier . field_identifier) ))) ;) }) (else_clause "else {\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e855d to 000e8561 has its CatchHandler @ 000e8b14 */\n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" else (compound_statement "{\n        *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e855d to 000e8561 has its CatchHandler @ 000e8b14 */\n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" { (expression_statement "*piVar7 = (int)(piVar7 + 2);" (assignment_expression "*piVar7 = (int)(piVar7 + 2)" (pointer_expression "*piVar7" * identifier) = (cast_expression "(int)(piVar7 + 2)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar7 + 2)" ( (binary_expression "piVar7 + 2" identifier + number_literal) )))) ;) comment (expression_statement "FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);" (call_expression "FUN_000513a0(piVar7,local_150,local_150 + local_14c,0)" identifier (argument_list "(piVar7,local_150,local_150 + local_14c,0)" ( identifier , identifier , (binary_expression "local_150 + local_14c" identifier + identifier) , number_literal ))) ;) (expression_statement "*(undefined1 *)(piVar7 + 6) = (undefined1)local_138;" (assignment_expression "*(undefined1 *)(piVar7 + 6) = (undefined1)local_138" (pointer_expression "*(undefined1 *)(piVar7 + 6)" * (cast_expression "(undefined1 *)(piVar7 + 6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7 + 6)" ( (binary_expression "piVar7 + 6" identifier + number_literal) )))) = (cast_expression "(undefined1)local_138" ( (type_descriptor "undefined1" type_identifier) ) identifier)) ;) (expression_statement "*(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;" (assignment_expression "*(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_" (pointer_expression "*(undefined1 *)((int)piVar7 + 0x19)" * (cast_expression "(undefined1 *)((int)piVar7 + 0x19)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar7 + 0x19)" ( (binary_expression "(int)piVar7 + 0x19" (cast_expression "(int)piVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (field_expression "local_138._1_1_" identifier . field_identifier)) ;) (expression_statement "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;" (assignment_expression "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" * (cast_expression "(int *)(param_1 + 0x2188)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) )))) = (binary_expression "*(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" * (cast_expression "(int *)(param_1 + 0x2188)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) )))) + number_literal)) ;) }))) (if_statement "if (local_150 != local_1e0) {\n        FUN_001e6db0(local_150);\n      }" if (parenthesized_expression "(local_150 != local_1e0)" ( (binary_expression "local_150 != local_1e0" identifier != identifier) )) (compound_statement "{\n        FUN_001e6db0(local_150);\n      }" { (expression_statement "FUN_001e6db0(local_150);" (call_expression "FUN_001e6db0(local_150)" identifier (argument_list "(local_150)" ( identifier ))) ;) })) (if_statement "if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }" if (parenthesized_expression "(local_134 != local_1dc)" ( (binary_expression "local_134 != local_1dc" identifier != identifier) )) (compound_statement "{\n        FUN_001e6db0(local_134);\n      }" { (expression_statement "FUN_001e6db0(local_134);" (call_expression "FUN_001e6db0(local_134)" identifier (argument_list "(local_134)" ( identifier ))) ;) })) (goto_statement "goto LAB_000e7f08;" goto statement_identifier ;) })) }) (else_clause "else {\n    pcVar12 = *(char **)(param_1 + 0x4cac);\n    sVar9 = strlen(pcVar12);\n    ppuVar3 = local_1d4;\n                    /* try { // try from 000e7ede to 000e7f8e has its CatchHandler @ 000e8b37 */\n    FUN_001ef9f0(local_1d4,0,0,pcVar12,sVar9);\n    iVar14 = FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6);\n    if (iVar14 == 0) {\n      uVar6 = local_1b8;\n      if (2 < local_1b8) {\n        uVar6 = 2;\n      }\n                    /* try { // try from 000e877d to 000e8781 has its CatchHandler @ 000e8b37 */\n      FUN_001eebf0(local_1d4,0,uVar6);\n    }\nLAB_000e7f08:\n    uVar6 = 0;\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n    if (local_1b8 != 0) {\n      do {\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    /* WARNING: Subroutine does not return */\n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */\n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      } while( true );\n    }\n  }" else (compound_statement "{\n    pcVar12 = *(char **)(param_1 + 0x4cac);\n    sVar9 = strlen(pcVar12);\n    ppuVar3 = local_1d4;\n                    /* try { // try from 000e7ede to 000e7f8e has its CatchHandler @ 000e8b37 */\n    FUN_001ef9f0(local_1d4,0,0,pcVar12,sVar9);\n    iVar14 = FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6);\n    if (iVar14 == 0) {\n      uVar6 = local_1b8;\n      if (2 < local_1b8) {\n        uVar6 = 2;\n      }\n                    /* try { // try from 000e877d to 000e8781 has its CatchHandler @ 000e8b37 */\n      FUN_001eebf0(local_1d4,0,uVar6);\n    }\nLAB_000e7f08:\n    uVar6 = 0;\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n    if (local_1b8 != 0) {\n      do {\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    /* WARNING: Subroutine does not return */\n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */\n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      } while( true );\n    }\n  }" { (expression_statement "pcVar12 = *(char **)(param_1 + 0x4cac);" (assignment_expression "pcVar12 = *(char **)(param_1 + 0x4cac)" identifier = (pointer_expression "*(char **)(param_1 + 0x4cac)" * (cast_expression "(char **)(param_1 + 0x4cac)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x4cac)" ( (binary_expression "param_1 + 0x4cac" identifier + number_literal) ))))) ;) (expression_statement "sVar9 = strlen(pcVar12);" (assignment_expression "sVar9 = strlen(pcVar12)" identifier = (call_expression "strlen(pcVar12)" identifier (argument_list "(pcVar12)" ( identifier )))) ;) (expression_statement "ppuVar3 = local_1d4;" (assignment_expression "ppuVar3 = local_1d4" identifier = identifier) ;) comment (expression_statement "FUN_001ef9f0(local_1d4,0,0,pcVar12,sVar9);" (call_expression "FUN_001ef9f0(local_1d4,0,0,pcVar12,sVar9)" identifier (argument_list "(local_1d4,0,0,pcVar12,sVar9)" ( identifier , number_literal , number_literal , identifier , identifier ))) ;) (expression_statement "iVar14 = FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6);" (assignment_expression "iVar14 = FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6)" identifier = (call_expression "FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6)" identifier (argument_list "(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6)" ( identifier , number_literal , number_literal , (binary_expression "(int)ppuVar4 + -0x1003c6" (cast_expression "(int)ppuVar4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (if_statement "if (iVar14 == 0) {\n      uVar6 = local_1b8;\n      if (2 < local_1b8) {\n        uVar6 = 2;\n      }\n                    /* try { // try from 000e877d to 000e8781 has its CatchHandler @ 000e8b37 */\n      FUN_001eebf0(local_1d4,0,uVar6);\n    }" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (compound_statement "{\n      uVar6 = local_1b8;\n      if (2 < local_1b8) {\n        uVar6 = 2;\n      }\n                    /* try { // try from 000e877d to 000e8781 has its CatchHandler @ 000e8b37 */\n      FUN_001eebf0(local_1d4,0,uVar6);\n    }" { (expression_statement "uVar6 = local_1b8;" (assignment_expression "uVar6 = local_1b8" identifier = identifier) ;) (if_statement "if (2 < local_1b8) {\n        uVar6 = 2;\n      }" if (parenthesized_expression "(2 < local_1b8)" ( (binary_expression "2 < local_1b8" number_literal < identifier) )) (compound_statement "{\n        uVar6 = 2;\n      }" { (expression_statement "uVar6 = 2;" (assignment_expression "uVar6 = 2" identifier = number_literal) ;) })) comment (expression_statement "FUN_001eebf0(local_1d4,0,uVar6);" (call_expression "FUN_001eebf0(local_1d4,0,uVar6)" identifier (argument_list "(local_1d4,0,uVar6)" ( identifier , number_literal , identifier ))) ;) })) (labeled_statement "LAB_000e7f08:\n    uVar6 = 0;" statement_identifier : (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;)) (expression_statement "local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);" (assignment_expression "local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150)" identifier = (cast_expression "(double)CONCAT44(local_1cc._4_4_,&local_150)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(local_1cc._4_4_,&local_150)" identifier (argument_list "(local_1cc._4_4_,&local_150)" ( (field_expression "local_1cc._4_4_" identifier . field_identifier) , (pointer_expression "&local_150" & identifier) ))))) ;) (if_statement "if (local_1b8 != 0) {\n      do {\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    /* WARNING: Subroutine does not return */\n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */\n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      } while( true );\n    }" if (parenthesized_expression "(local_1b8 != 0)" ( (binary_expression "local_1b8 != 0" identifier != number_literal) )) (compound_statement "{\n      do {\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    /* WARNING: Subroutine does not return */\n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */\n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      } while( true );\n    }" { (do_statement "do {\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    /* WARNING: Subroutine does not return */\n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */\n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      } while( true );" do (compound_statement "{\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    /* WARNING: Subroutine does not return */\n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */\n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      }" { (expression_statement "iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);" (assignment_expression "iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6)" identifier = (call_expression "FUN_001f0c10(local_1d4,0x3a,uVar6)" identifier (argument_list "(local_1d4,0x3a,uVar6)" ( identifier , number_literal , identifier )))) ;) (expression_statement "uVar16 = 0xffffffff;" (assignment_expression "uVar16 = 0xffffffff" identifier = number_literal) ;) (if_statement "if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    /* WARNING: Subroutine does not return */\n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */\n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }" if (parenthesized_expression "((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0))" ( (binary_expression "(iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)" (parenthesized_expression "(iVar14 == -1)" ( (binary_expression "iVar14 == -1" identifier == number_literal) )) || (parenthesized_expression "(uVar16 = iVar14 - uVar6, uVar16 != 0)" ( (comma_expression "uVar16 = iVar14 - uVar6, uVar16 != 0" (assignment_expression "uVar16 = iVar14 - uVar6" identifier = (binary_expression "iVar14 - uVar6" identifier - identifier)) , (binary_expression "uVar16 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n          if (local_1b8 < uVar6) {\n                    /* WARNING: Subroutine does not return */\n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */\n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }" { (if_statement "if (local_1b8 < uVar6) {\n                    /* WARNING: Subroutine does not return */\n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }" if (parenthesized_expression "(local_1b8 < uVar6)" ( (binary_expression "local_1b8 < uVar6" identifier < identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }" { comment (expression_statement "FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);" (call_expression "FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8)" identifier (argument_list "(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8)" ( (binary_expression "local_1c4 + -0x4104f" identifier + number_literal) , (binary_expression "local_1c4 + -0x400ea" identifier + number_literal) , identifier , identifier ))) ;) })) (expression_statement "local_1e0 = local_148;" (assignment_expression "local_1e0 = local_148" identifier = identifier) ;) (expression_statement "uVar10 = local_1b8 - uVar6;" (assignment_expression "uVar10 = local_1b8 - uVar6" identifier = (binary_expression "local_1b8 - uVar6" identifier - identifier)) ;) (if_statement "if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }" if (parenthesized_expression "(uVar16 < local_1b8 - uVar6)" ( (binary_expression "uVar16 < local_1b8 - uVar6" identifier < (binary_expression "local_1b8 - uVar6" identifier - identifier)) )) (compound_statement "{\n            uVar10 = uVar16;\n          }" { (expression_statement "uVar10 = uVar16;" (assignment_expression "uVar10 = uVar16" identifier = identifier) ;) })) (expression_statement "local_150 = local_1e0;" (assignment_expression "local_150 = local_1e0" identifier = identifier) ;) (expression_statement "FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);" (call_expression "FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0)" identifier (argument_list "(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0)" ( (field_expression "local_1cc._0_4_" identifier . field_identifier) , (binary_expression "local_1bc + uVar6" identifier + identifier) , (binary_expression "local_1bc + uVar6 + uVar10" (binary_expression "local_1bc + uVar6" identifier + identifier) + identifier) , number_literal ))) ;) (expression_statement "local_1dc = local_12c;" (assignment_expression "local_1dc = local_12c" identifier = identifier) ;) (expression_statement "local_1d0 = (undefined ***)&local_134;" (assignment_expression "local_1d0 = (undefined ***)&local_134" identifier = (cast_expression "(undefined ***)&local_134" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (pointer_expression "&local_134" & identifier))) ;) (expression_statement "local_134 = local_1dc;" (assignment_expression "local_134 = local_1dc" identifier = identifier) ;) comment (expression_statement "FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);" (call_expression "FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0)" identifier (argument_list "(local_1d0,local_150,local_150 + local_14c,0)" ( identifier , identifier , (binary_expression "local_150 + local_14c" identifier + identifier) , number_literal ))) ;) (expression_statement "local_11c = 1;" (assignment_expression "local_11c = 1" identifier = number_literal) ;) (if_statement "if (local_130 == 0) {\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }" if (parenthesized_expression "(local_130 == 0)" ( (binary_expression "local_130 == 0" identifier == number_literal) )) (compound_statement "{\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }" { comment (expression_statement "FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);" (call_expression "FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1)" identifier (argument_list "(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1)" ( identifier , number_literal , number_literal , (binary_expression "(int)local_1c4 + -0x1013b5" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , number_literal ))) ;) })) (expression_statement "piVar7 = *(int **)(param_1 + 0x2188);" (assignment_expression "piVar7 = *(int **)(param_1 + 0x2188)" identifier = (pointer_expression "*(int **)(param_1 + 0x2188)" * (cast_expression "(int **)(param_1 + 0x2188)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) ))))) ;) (if_statement "if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }" if (parenthesized_expression "(piVar7 == *(int **)(param_1 + 0x218c))" ( (binary_expression "piVar7 == *(int **)(param_1 + 0x218c)" identifier == (pointer_expression "*(int **)(param_1 + 0x218c)" * (cast_expression "(int **)(param_1 + 0x218c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x218c)" ( (binary_expression "param_1 + 0x218c" identifier + number_literal) ))))) )) (compound_statement "{\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }" { comment (expression_statement "FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);" (call_expression "FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0)" identifier (argument_list "(param_1 + 0x2184,piVar7,local_1d0)" ( (binary_expression "param_1 + 0x2184" identifier + number_literal) , identifier , identifier ))) ;) }) (else_clause "else {\n            *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }" else (compound_statement "{\n            *piVar7 = (int)(piVar7 + 2);\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }" { (expression_statement "*piVar7 = (int)(piVar7 + 2);" (assignment_expression "*piVar7 = (int)(piVar7 + 2)" (pointer_expression "*piVar7" * identifier) = (cast_expression "(int)(piVar7 + 2)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar7 + 2)" ( (binary_expression "piVar7 + 2" identifier + number_literal) )))) ;) comment (expression_statement "FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);" (call_expression "FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0)" identifier (argument_list "(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0)" ( identifier , identifier , (cast_expression "(undefined *)(local_130 + (int)local_134)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_130 + (int)local_134)" ( (binary_expression "local_130 + (int)local_134" identifier + (cast_expression "(int)local_134" ( (type_descriptor "int" primitive_type) ) identifier)) ))) , number_literal ))) ;) (expression_statement "*(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;" (assignment_expression "*(undefined1 *)(piVar7 + 6) = (undefined1)local_11c" (pointer_expression "*(undefined1 *)(piVar7 + 6)" * (cast_expression "(undefined1 *)(piVar7 + 6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7 + 6)" ( (binary_expression "piVar7 + 6" identifier + number_literal) )))) = (cast_expression "(undefined1)local_11c" ( (type_descriptor "undefined1" type_identifier) ) identifier)) ;) (expression_statement "*(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;" (assignment_expression "*(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_" (pointer_expression "*(undefined1 *)((int)piVar7 + 0x19)" * (cast_expression "(undefined1 *)((int)piVar7 + 0x19)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar7 + 0x19)" ( (binary_expression "(int)piVar7 + 0x19" (cast_expression "(int)piVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (field_expression "local_11c._1_1_" identifier . field_identifier)) ;) (expression_statement "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;" (assignment_expression "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" * (cast_expression "(int *)(param_1 + 0x2188)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) )))) = (binary_expression "*(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" * (cast_expression "(int *)(param_1 + 0x2188)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) )))) + number_literal)) ;) }))) (if_statement "if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }" if (parenthesized_expression "(local_134 != local_1dc)" ( (binary_expression "local_134 != local_1dc" identifier != identifier) )) (compound_statement "{\n            FUN_001e6db0(local_134);\n          }" { (expression_statement "FUN_001e6db0(local_134);" (call_expression "FUN_001e6db0(local_134)" identifier (argument_list "(local_134)" ( identifier ))) ;) })) (if_statement "if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }" if (parenthesized_expression "(local_150 != local_1e0)" ( (binary_expression "local_150 != local_1e0" identifier != identifier) )) (compound_statement "{\n            FUN_001e6db0(local_150);\n          }" { (expression_statement "FUN_001e6db0(local_150);" (call_expression "FUN_001e6db0(local_150)" identifier (argument_list "(local_150)" ( identifier ))) ;) })) (if_statement "if (iVar14 == -1) break;" if (parenthesized_expression "(iVar14 == -1)" ( (binary_expression "iVar14 == -1" identifier == number_literal) )) (break_statement "break;" break ;)) })) (expression_statement "uVar6 = iVar14 + 1;" (assignment_expression "uVar6 = iVar14 + 1" identifier = (binary_expression "iVar14 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "( true )" ( true )) ;) })) }))) (expression_statement "ppuVar4 = local_1c4;" (assignment_expression "ppuVar4 = local_1c4" identifier = identifier) ;) (expression_statement "puVar17 = auStack_20c;" (assignment_expression "puVar17 = auStack_20c" identifier = identifier) ;) (expression_statement "puVar18 = auStack_20c;" (assignment_expression "puVar18 = auStack_20c" identifier = identifier) ;) (if_statement "if (*(int *)(param_1 + 0x3288) != 0) {\n    local_1e8 = local_a4;\n    local_1d0 = (undefined ***)&local_134;\n    FUN_0022bca0(local_1e8);\n    local_1fc = ppuVar4 + -0xa14;\n    local_34 = 0;\n    local_2c = 0;\n    local_a4[0] = ppuVar4 + -0xa12;\n    local_30 = 0;\n    local_28 = 0;\n    local_1f4 = (undefined ***)ppuVar4[-0x9d9];\n    local_1f8 = ppuVar4[-0x9d8];\n    local_24 = 0;\n    local_20 = 0;\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n                    /* try { // try from 000e77b7 to 000e77bb has its CatchHandler @ 000e8b92 */\n    FUN_00211450((int)local_1f4[-3] + (int)&local_134,0);\n    local_200 = ppuVar4 + -0x9d6;\n    local_134 = (undefined ***)(ppuVar4 + -0x9d3);\n    local_a4[0] = ppuVar4 + -0x9ce;\n    local_1dc = local_12c;\n                    /* try { // try from 000e77e9 to 000e77ed has its CatchHandler @ 000e8b84 */\n    FUN_00213670(local_12c);\n                    /* try { // try from 000e77f7 to 000e77fb has its CatchHandler @ 000e8b29 */\n    FUN_00211450(local_1e8,local_12c);\n                    /* try { // try from 000e780b to 000e783a has its CatchHandler @ 000e8b30 */\n    iVar14 = FUN_00217950(local_12c,*(undefined4 *)(param_1 + 0x3288),8);\n    puVar15 = (undefined *)((int)local_1d0 + (int)local_134[-3]);\n    if (iVar14 == 0) {\n                    /* try { // try from 000e8751 to 000e8755 has its CatchHandler @ 000e8b30 */\n      FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4);\n    }\n    else {\n      FUN_00210c00(puVar15,0);\n    }\n    ppuVar4 = local_1c4;\n    if ((local_90 & 5) != 0) {\n      piVar7 = __errno_location();\n      pcVar12 = strerror(*piVar7);\n      uVar11 = *(undefined4 *)(param_1 + 0x3288);\n      uVar13 = gettext(local_1c4 + -0x3f6cb);\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8a0c to 000e8a10 has its CatchHandler @ 000e8b30 */\n      FUN_00065450(uVar13,uVar11,pcVar12);\n    }\n    local_1e0 = local_148;\n    local_148[0] = 0;\n    local_14c = 0;\n    piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n    local_150 = local_1e0;\n    if (piVar7 == (int *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8af0 to 000e8af4 has its CatchHandler @ 000e8b8b */\n      FUN_0022c630();\n    }\n    if ((char)piVar7[7] == '\0') {\n                    /* try { // try from 000e80ec to 000e8113 has its CatchHandler @ 000e8b8b */\n      FUN_0022ccc0(piVar7);\n      iVar14 = 10;\n      if (*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0) {\n        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);\n        iVar14 = (int)cVar5;\n      }\n    }\n    else {\n      iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n    }\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n                    /* try { // try from 000e78b1 to 000e78f6 has its CatchHandler @ 000e8b8b */\n    FUN_001e7cb0(local_1d0,&local_150,iVar14);\n    local_1d4 = (undefined1 **)(param_1 + 0x5a3c);\n    local_1e4 = local_1c0;\n    while ((local_90 & 5) == 0) {\n      if ((local_14c != 0) && (local_150[local_14c + -1] == '\r')) {\n        *(undefined4 *)(puVar17 + -8) = 0;\n        *(int *)(puVar17 + -0xc) = local_14c + -1;\n        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;\n                    /* try { // try from 000e7e32 to 000e7e36 has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;\n        FUN_001ef780();\n      }\n      *(undefined4 *)(puVar17 + -8) = 0xc70f6907;\n      *(int *)(puVar17 + -0xc) = local_14c;\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe793a;\n      uVar6 = FUN_001e52b0();\n      local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40);\n      *(uint *)(puVar17 + -0x14) = uVar6;\n      *(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_;\n      *(uint *)(puVar17 + -0x1c) = local_1d8;\n      *(undefined1 ***)(puVar17 + -0x20) = local_1d4;\n      *(undefined4 *)(puVar17 + -0x24) = 0xe7960;\n      piVar7 = (int *)FUN_000eadf0();\n      if ((piVar7 == (int *)0x0) || (*piVar7 == 0)) {\n        *(undefined4 *)(puVar17 + -0x10) = 0x20;\n                    /* try { // try from 000e7a7b to 000e7a7f has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;\n        puVar8 = (undefined4 *)FUN_001e5200();\n        *puVar8 = 0;\n        puVar8[1] = puVar8 + 3;\n        *(undefined4 *)(puVar17 + -4) = 0;\n        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;\n        *(undefined1 **)(puVar17 + -0xc) = local_150;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;\n                    /* try { // try from 000e7aa7 to 000e7aab has its CatchHandler @ 000e8b99 */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;\n        FUN_000513a0();\n        *(undefined4 *)(puVar17 + -0xc) = 1;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8;\n        *(uint *)(puVar17 + -0x14) = uVar6;\n        *(uint *)(puVar17 + -0x18) = local_1d8;\n        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;\n        *(undefined1 **)(puVar17 + -0x20) = local_1e4;\n                    /* try { // try from 000e7ac4 to 000e7ac8 has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;\n        FUN_000ec3b0();\n        puVar17 = puVar17 + -4;\n      }\n      ppuVar4 = local_1c4;\n      piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n      if (piVar7 == (int *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88aa to 000e88ae has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -4) = 0xe88af;\n        FUN_0022c630();\n      }\n      if ((char)piVar7[7] == '\0') {\n        *(int **)(puVar17 + -0x10) = piVar7;\n                    /* try { // try from 000e79a3 to 000e79ca has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;\n        FUN_0022ccc0();\n        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);\n        iVar14 = 10;\n        if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }\n      }\n      else {\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }\n      *(int *)(puVar17 + -8) = iVar14;\n      *(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_;\n      *(undefined ****)(puVar17 + -0x10) = local_1d0;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe78f7;\n      FUN_001e7cb0();\n    }\n    if (local_150 != local_1e0) {\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe7aef;\n      FUN_001e6db0();\n    }\n    ppuVar4 = local_1c4;\n    *(undefined ****)(puVar17 + -0x10) = local_1dc;\n    local_134 = (undefined ***)(local_200 + 3);\n    local_a4[0] = local_200 + 8;\n    local_12c[0] = local_1c4 + -0x9f2;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b2f;\n    FUN_00216e90();\n    *(undefined1 **)(puVar17 + -0x10) = local_f4;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b3d;\n    FUN_001e75f0();\n    local_12c[0] = ppuVar4 + -0xbd7;\n    *(undefined1 **)(puVar17 + -0x10) = local_110;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b5a;\n    FUN_001e9510();\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n    local_a4[0] = local_1fc + 2;\n    *(undefined ****)(puVar17 + -0x10) = local_1e8;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b9b;\n    FUN_0022c040();\n    puVar18 = puVar17;\n  }" if (parenthesized_expression "(*(int *)(param_1 + 0x3288) != 0)" ( (binary_expression "*(int *)(param_1 + 0x3288) != 0" (pointer_expression "*(int *)(param_1 + 0x3288)" * (cast_expression "(int *)(param_1 + 0x3288)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3288)" ( (binary_expression "param_1 + 0x3288" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    local_1e8 = local_a4;\n    local_1d0 = (undefined ***)&local_134;\n    FUN_0022bca0(local_1e8);\n    local_1fc = ppuVar4 + -0xa14;\n    local_34 = 0;\n    local_2c = 0;\n    local_a4[0] = ppuVar4 + -0xa12;\n    local_30 = 0;\n    local_28 = 0;\n    local_1f4 = (undefined ***)ppuVar4[-0x9d9];\n    local_1f8 = ppuVar4[-0x9d8];\n    local_24 = 0;\n    local_20 = 0;\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n                    /* try { // try from 000e77b7 to 000e77bb has its CatchHandler @ 000e8b92 */\n    FUN_00211450((int)local_1f4[-3] + (int)&local_134,0);\n    local_200 = ppuVar4 + -0x9d6;\n    local_134 = (undefined ***)(ppuVar4 + -0x9d3);\n    local_a4[0] = ppuVar4 + -0x9ce;\n    local_1dc = local_12c;\n                    /* try { // try from 000e77e9 to 000e77ed has its CatchHandler @ 000e8b84 */\n    FUN_00213670(local_12c);\n                    /* try { // try from 000e77f7 to 000e77fb has its CatchHandler @ 000e8b29 */\n    FUN_00211450(local_1e8,local_12c);\n                    /* try { // try from 000e780b to 000e783a has its CatchHandler @ 000e8b30 */\n    iVar14 = FUN_00217950(local_12c,*(undefined4 *)(param_1 + 0x3288),8);\n    puVar15 = (undefined *)((int)local_1d0 + (int)local_134[-3]);\n    if (iVar14 == 0) {\n                    /* try { // try from 000e8751 to 000e8755 has its CatchHandler @ 000e8b30 */\n      FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4);\n    }\n    else {\n      FUN_00210c00(puVar15,0);\n    }\n    ppuVar4 = local_1c4;\n    if ((local_90 & 5) != 0) {\n      piVar7 = __errno_location();\n      pcVar12 = strerror(*piVar7);\n      uVar11 = *(undefined4 *)(param_1 + 0x3288);\n      uVar13 = gettext(local_1c4 + -0x3f6cb);\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8a0c to 000e8a10 has its CatchHandler @ 000e8b30 */\n      FUN_00065450(uVar13,uVar11,pcVar12);\n    }\n    local_1e0 = local_148;\n    local_148[0] = 0;\n    local_14c = 0;\n    piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n    local_150 = local_1e0;\n    if (piVar7 == (int *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8af0 to 000e8af4 has its CatchHandler @ 000e8b8b */\n      FUN_0022c630();\n    }\n    if ((char)piVar7[7] == '\0') {\n                    /* try { // try from 000e80ec to 000e8113 has its CatchHandler @ 000e8b8b */\n      FUN_0022ccc0(piVar7);\n      iVar14 = 10;\n      if (*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0) {\n        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);\n        iVar14 = (int)cVar5;\n      }\n    }\n    else {\n      iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n    }\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n                    /* try { // try from 000e78b1 to 000e78f6 has its CatchHandler @ 000e8b8b */\n    FUN_001e7cb0(local_1d0,&local_150,iVar14);\n    local_1d4 = (undefined1 **)(param_1 + 0x5a3c);\n    local_1e4 = local_1c0;\n    while ((local_90 & 5) == 0) {\n      if ((local_14c != 0) && (local_150[local_14c + -1] == '\r')) {\n        *(undefined4 *)(puVar17 + -8) = 0;\n        *(int *)(puVar17 + -0xc) = local_14c + -1;\n        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;\n                    /* try { // try from 000e7e32 to 000e7e36 has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;\n        FUN_001ef780();\n      }\n      *(undefined4 *)(puVar17 + -8) = 0xc70f6907;\n      *(int *)(puVar17 + -0xc) = local_14c;\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe793a;\n      uVar6 = FUN_001e52b0();\n      local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40);\n      *(uint *)(puVar17 + -0x14) = uVar6;\n      *(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_;\n      *(uint *)(puVar17 + -0x1c) = local_1d8;\n      *(undefined1 ***)(puVar17 + -0x20) = local_1d4;\n      *(undefined4 *)(puVar17 + -0x24) = 0xe7960;\n      piVar7 = (int *)FUN_000eadf0();\n      if ((piVar7 == (int *)0x0) || (*piVar7 == 0)) {\n        *(undefined4 *)(puVar17 + -0x10) = 0x20;\n                    /* try { // try from 000e7a7b to 000e7a7f has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;\n        puVar8 = (undefined4 *)FUN_001e5200();\n        *puVar8 = 0;\n        puVar8[1] = puVar8 + 3;\n        *(undefined4 *)(puVar17 + -4) = 0;\n        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;\n        *(undefined1 **)(puVar17 + -0xc) = local_150;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;\n                    /* try { // try from 000e7aa7 to 000e7aab has its CatchHandler @ 000e8b99 */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;\n        FUN_000513a0();\n        *(undefined4 *)(puVar17 + -0xc) = 1;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8;\n        *(uint *)(puVar17 + -0x14) = uVar6;\n        *(uint *)(puVar17 + -0x18) = local_1d8;\n        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;\n        *(undefined1 **)(puVar17 + -0x20) = local_1e4;\n                    /* try { // try from 000e7ac4 to 000e7ac8 has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;\n        FUN_000ec3b0();\n        puVar17 = puVar17 + -4;\n      }\n      ppuVar4 = local_1c4;\n      piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n      if (piVar7 == (int *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88aa to 000e88ae has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -4) = 0xe88af;\n        FUN_0022c630();\n      }\n      if ((char)piVar7[7] == '\0') {\n        *(int **)(puVar17 + -0x10) = piVar7;\n                    /* try { // try from 000e79a3 to 000e79ca has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;\n        FUN_0022ccc0();\n        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);\n        iVar14 = 10;\n        if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }\n      }\n      else {\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }\n      *(int *)(puVar17 + -8) = iVar14;\n      *(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_;\n      *(undefined ****)(puVar17 + -0x10) = local_1d0;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe78f7;\n      FUN_001e7cb0();\n    }\n    if (local_150 != local_1e0) {\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe7aef;\n      FUN_001e6db0();\n    }\n    ppuVar4 = local_1c4;\n    *(undefined ****)(puVar17 + -0x10) = local_1dc;\n    local_134 = (undefined ***)(local_200 + 3);\n    local_a4[0] = local_200 + 8;\n    local_12c[0] = local_1c4 + -0x9f2;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b2f;\n    FUN_00216e90();\n    *(undefined1 **)(puVar17 + -0x10) = local_f4;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b3d;\n    FUN_001e75f0();\n    local_12c[0] = ppuVar4 + -0xbd7;\n    *(undefined1 **)(puVar17 + -0x10) = local_110;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b5a;\n    FUN_001e9510();\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n    local_a4[0] = local_1fc + 2;\n    *(undefined ****)(puVar17 + -0x10) = local_1e8;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b9b;\n    FUN_0022c040();\n    puVar18 = puVar17;\n  }" { (expression_statement "local_1e8 = local_a4;" (assignment_expression "local_1e8 = local_a4" identifier = identifier) ;) (expression_statement "local_1d0 = (undefined ***)&local_134;" (assignment_expression "local_1d0 = (undefined ***)&local_134" identifier = (cast_expression "(undefined ***)&local_134" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (pointer_expression "&local_134" & identifier))) ;) (expression_statement "FUN_0022bca0(local_1e8);" (call_expression "FUN_0022bca0(local_1e8)" identifier (argument_list "(local_1e8)" ( identifier ))) ;) (expression_statement "local_1fc = ppuVar4 + -0xa14;" (assignment_expression "local_1fc = ppuVar4 + -0xa14" identifier = (binary_expression "ppuVar4 + -0xa14" identifier + number_literal)) ;) (expression_statement "local_34 = 0;" (assignment_expression "local_34 = 0" identifier = number_literal) ;) (expression_statement "local_2c = 0;" (assignment_expression "local_2c = 0" identifier = number_literal) ;) (expression_statement "local_a4[0] = ppuVar4 + -0xa12;" (assignment_expression "local_a4[0] = ppuVar4 + -0xa12" (subscript_expression "local_a4[0]" identifier [ number_literal ]) = (binary_expression "ppuVar4 + -0xa12" identifier + number_literal)) ;) (expression_statement "local_30 = 0;" (assignment_expression "local_30 = 0" identifier = number_literal) ;) (expression_statement "local_28 = 0;" (assignment_expression "local_28 = 0" identifier = number_literal) ;) (expression_statement "local_1f4 = (undefined ***)ppuVar4[-0x9d9];" (assignment_expression "local_1f4 = (undefined ***)ppuVar4[-0x9d9]" identifier = (cast_expression "(undefined ***)ppuVar4[-0x9d9]" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (subscript_expression "ppuVar4[-0x9d9]" identifier [ number_literal ]))) ;) (expression_statement "local_1f8 = ppuVar4[-0x9d8];" (assignment_expression "local_1f8 = ppuVar4[-0x9d8]" identifier = (subscript_expression "ppuVar4[-0x9d8]" identifier [ number_literal ])) ;) (expression_statement "local_24 = 0;" (assignment_expression "local_24 = 0" identifier = number_literal) ;) (expression_statement "local_20 = 0;" (assignment_expression "local_20 = 0" identifier = number_literal) ;) (expression_statement "local_134 = local_1f4;" (assignment_expression "local_134 = local_1f4" identifier = identifier) ;) (expression_statement "*(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;" (assignment_expression "*(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8" (pointer_expression "*(undefined **)((int)&local_134 + (int)local_1f4[-3])" * (cast_expression "(undefined **)((int)&local_134 + (int)local_1f4[-3])" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&local_134 + (int)local_1f4[-3])" ( (binary_expression "(int)&local_134 + (int)local_1f4[-3]" (cast_expression "(int)&local_134" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_134" & identifier)) + (cast_expression "(int)local_1f4[-3]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "local_1f4[-3]" identifier [ number_literal ]))) )))) = identifier) ;) (expression_statement "local_130 = 0;" (assignment_expression "local_130 = 0" identifier = number_literal) ;) comment (expression_statement "FUN_00211450((int)local_1f4[-3] + (int)&local_134,0);" (call_expression "FUN_00211450((int)local_1f4[-3] + (int)&local_134,0)" identifier (argument_list "((int)local_1f4[-3] + (int)&local_134,0)" ( (binary_expression "(int)local_1f4[-3] + (int)&local_134" (cast_expression "(int)local_1f4[-3]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "local_1f4[-3]" identifier [ number_literal ])) + (cast_expression "(int)&local_134" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_134" & identifier))) , number_literal ))) ;) (expression_statement "local_200 = ppuVar4 + -0x9d6;" (assignment_expression "local_200 = ppuVar4 + -0x9d6" identifier = (binary_expression "ppuVar4 + -0x9d6" identifier + number_literal)) ;) (expression_statement "local_134 = (undefined ***)(ppuVar4 + -0x9d3);" (assignment_expression "local_134 = (undefined ***)(ppuVar4 + -0x9d3)" identifier = (cast_expression "(undefined ***)(ppuVar4 + -0x9d3)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(ppuVar4 + -0x9d3)" ( (binary_expression "ppuVar4 + -0x9d3" identifier + number_literal) )))) ;) (expression_statement "local_a4[0] = ppuVar4 + -0x9ce;" (assignment_expression "local_a4[0] = ppuVar4 + -0x9ce" (subscript_expression "local_a4[0]" identifier [ number_literal ]) = (binary_expression "ppuVar4 + -0x9ce" identifier + number_literal)) ;) (expression_statement "local_1dc = local_12c;" (assignment_expression "local_1dc = local_12c" identifier = identifier) ;) comment (expression_statement "FUN_00213670(local_12c);" (call_expression "FUN_00213670(local_12c)" identifier (argument_list "(local_12c)" ( identifier ))) ;) comment (expression_statement "FUN_00211450(local_1e8,local_12c);" (call_expression "FUN_00211450(local_1e8,local_12c)" identifier (argument_list "(local_1e8,local_12c)" ( identifier , identifier ))) ;) comment (expression_statement "iVar14 = FUN_00217950(local_12c,*(undefined4 *)(param_1 + 0x3288),8);" (assignment_expression "iVar14 = FUN_00217950(local_12c,*(undefined4 *)(param_1 + 0x3288),8)" identifier = (call_expression "FUN_00217950(local_12c,*(undefined4 *)(param_1 + 0x3288),8)" identifier (argument_list "(local_12c,*(undefined4 *)(param_1 + 0x3288),8)" ( identifier , (pointer_expression "*(undefined4 *)(param_1 + 0x3288)" * (cast_expression "(undefined4 *)(param_1 + 0x3288)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3288)" ( (binary_expression "param_1 + 0x3288" identifier + number_literal) )))) , number_literal )))) ;) (expression_statement "puVar15 = (undefined *)((int)local_1d0 + (int)local_134[-3]);" (assignment_expression "puVar15 = (undefined *)((int)local_1d0 + (int)local_134[-3])" identifier = (cast_expression "(undefined *)((int)local_1d0 + (int)local_134[-3])" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1d0 + (int)local_134[-3])" ( (binary_expression "(int)local_1d0 + (int)local_134[-3]" (cast_expression "(int)local_1d0" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_134[-3]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "local_134[-3]" identifier [ number_literal ]))) )))) ;) (if_statement "if (iVar14 == 0) {\n                    /* try { // try from 000e8751 to 000e8755 has its CatchHandler @ 000e8b30 */\n      FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4);\n    }\n    else {\n      FUN_00210c00(puVar15,0);\n    }" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (compound_statement "{\n                    /* try { // try from 000e8751 to 000e8755 has its CatchHandler @ 000e8b30 */\n      FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4);\n    }" { comment (expression_statement "FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4);" (call_expression "FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4)" identifier (argument_list "(puVar15,*(uint *)(puVar15 + 0x14) | 4)" ( identifier , (binary_expression "*(uint *)(puVar15 + 0x14) | 4" (pointer_expression "*(uint *)(puVar15 + 0x14)" * (cast_expression "(uint *)(puVar15 + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + 0x14)" ( (binary_expression "puVar15 + 0x14" identifier + number_literal) )))) | number_literal) ))) ;) }) (else_clause "else {\n      FUN_00210c00(puVar15,0);\n    }" else (compound_statement "{\n      FUN_00210c00(puVar15,0);\n    }" { (expression_statement "FUN_00210c00(puVar15,0);" (call_expression "FUN_00210c00(puVar15,0)" identifier (argument_list "(puVar15,0)" ( identifier , number_literal ))) ;) }))) (expression_statement "ppuVar4 = local_1c4;" (assignment_expression "ppuVar4 = local_1c4" identifier = identifier) ;) (if_statement "if ((local_90 & 5) != 0) {\n      piVar7 = __errno_location();\n      pcVar12 = strerror(*piVar7);\n      uVar11 = *(undefined4 *)(param_1 + 0x3288);\n      uVar13 = gettext(local_1c4 + -0x3f6cb);\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8a0c to 000e8a10 has its CatchHandler @ 000e8b30 */\n      FUN_00065450(uVar13,uVar11,pcVar12);\n    }" if (parenthesized_expression "((local_90 & 5) != 0)" ( (binary_expression "(local_90 & 5) != 0" (parenthesized_expression "(local_90 & 5)" ( (binary_expression "local_90 & 5" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      piVar7 = __errno_location();\n      pcVar12 = strerror(*piVar7);\n      uVar11 = *(undefined4 *)(param_1 + 0x3288);\n      uVar13 = gettext(local_1c4 + -0x3f6cb);\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8a0c to 000e8a10 has its CatchHandler @ 000e8b30 */\n      FUN_00065450(uVar13,uVar11,pcVar12);\n    }" { (expression_statement "piVar7 = __errno_location();" (assignment_expression "piVar7 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "pcVar12 = strerror(*piVar7);" (assignment_expression "pcVar12 = strerror(*piVar7)" identifier = (call_expression "strerror(*piVar7)" identifier (argument_list "(*piVar7)" ( (pointer_expression "*piVar7" * identifier) )))) ;) (expression_statement "uVar11 = *(undefined4 *)(param_1 + 0x3288);" (assignment_expression "uVar11 = *(undefined4 *)(param_1 + 0x3288)" identifier = (pointer_expression "*(undefined4 *)(param_1 + 0x3288)" * (cast_expression "(undefined4 *)(param_1 + 0x3288)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3288)" ( (binary_expression "param_1 + 0x3288" identifier + number_literal) ))))) ;) (expression_statement "uVar13 = gettext(local_1c4 + -0x3f6cb);" (assignment_expression "uVar13 = gettext(local_1c4 + -0x3f6cb)" identifier = (call_expression "gettext(local_1c4 + -0x3f6cb)" identifier (argument_list "(local_1c4 + -0x3f6cb)" ( (binary_expression "local_1c4 + -0x3f6cb" identifier + number_literal) )))) ;) comment comment (expression_statement "FUN_00065450(uVar13,uVar11,pcVar12);" (call_expression "FUN_00065450(uVar13,uVar11,pcVar12)" identifier (argument_list "(uVar13,uVar11,pcVar12)" ( identifier , identifier , identifier ))) ;) })) (expression_statement "local_1e0 = local_148;" (assignment_expression "local_1e0 = local_148" identifier = identifier) ;) (expression_statement "local_148[0] = 0;" (assignment_expression "local_148[0] = 0" (subscript_expression "local_148[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "local_14c = 0;" (assignment_expression "local_14c = 0" identifier = number_literal) ;) (expression_statement "piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);" (assignment_expression "piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3])" identifier = (pointer_expression "*(int **)((int)aiStack_b8 + (int)local_134[-3])" * (cast_expression "(int **)((int)aiStack_b8 + (int)local_134[-3])" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)aiStack_b8 + (int)local_134[-3])" ( (binary_expression "(int)aiStack_b8 + (int)local_134[-3]" (cast_expression "(int)aiStack_b8" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_134[-3]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "local_134[-3]" identifier [ number_literal ]))) ))))) ;) (expression_statement "local_150 = local_1e0;" (assignment_expression "local_150 = local_1e0" identifier = identifier) ;) (if_statement "if (piVar7 == (int *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8af0 to 000e8af4 has its CatchHandler @ 000e8b8b */\n      FUN_0022c630();\n    }" if (parenthesized_expression "(piVar7 == (int *)0x0)" ( (binary_expression "piVar7 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8af0 to 000e8af4 has its CatchHandler @ 000e8b8b */\n      FUN_0022c630();\n    }" { comment comment (expression_statement "FUN_0022c630();" (call_expression "FUN_0022c630()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if ((char)piVar7[7] == '\0') {\n                    /* try { // try from 000e80ec to 000e8113 has its CatchHandler @ 000e8b8b */\n      FUN_0022ccc0(piVar7);\n      iVar14 = 10;\n      if (*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0) {\n        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);\n        iVar14 = (int)cVar5;\n      }\n    }\n    else {\n      iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n    }" if (parenthesized_expression "((char)piVar7[7] == '\0')" ( (binary_expression "(char)piVar7[7] == '\0'" (cast_expression "(char)piVar7[7]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "piVar7[7]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    /* try { // try from 000e80ec to 000e8113 has its CatchHandler @ 000e8b8b */\n      FUN_0022ccc0(piVar7);\n      iVar14 = 10;\n      if (*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0) {\n        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);\n        iVar14 = (int)cVar5;\n      }\n    }" { comment (expression_statement "FUN_0022ccc0(piVar7);" (call_expression "FUN_0022ccc0(piVar7)" identifier (argument_list "(piVar7)" ( identifier ))) ;) (expression_statement "iVar14 = 10;" (assignment_expression "iVar14 = 10" identifier = number_literal) ;) (if_statement "if (*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0) {\n        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);\n        iVar14 = (int)cVar5;\n      }" if (parenthesized_expression "(*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0)" ( (binary_expression "*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0" (pointer_expression "*(undefined ***)(*piVar7 + 0x18)" * (cast_expression "(undefined ***)(*piVar7 + 0x18)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(*piVar7 + 0x18)" ( (binary_expression "*piVar7 + 0x18" (pointer_expression "*piVar7" * identifier) + number_literal) )))) != (binary_expression "ppuVar4 + -0xba9e0" identifier + number_literal)) )) (compound_statement "{\n        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);\n        iVar14 = (int)cVar5;\n      }" { (expression_statement "cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);" (assignment_expression "cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10)" identifier = (call_expression "(*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10)" (parenthesized_expression "(*(code *)*(undefined ***)(*piVar7 + 0x18))" ( (pointer_expression "*(code *)*(undefined ***)(*piVar7 + 0x18)" * (cast_expression "(code *)*(undefined ***)(*piVar7 + 0x18)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*(undefined ***)(*piVar7 + 0x18)" * (cast_expression "(undefined ***)(*piVar7 + 0x18)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(*piVar7 + 0x18)" ( (binary_expression "*piVar7 + 0x18" (pointer_expression "*piVar7" * identifier) + number_literal) )))))) )) (argument_list "(piVar7,10)" ( identifier , number_literal )))) ;) (expression_statement "iVar14 = (int)cVar5;" (assignment_expression "iVar14 = (int)cVar5" identifier = (cast_expression "(int)cVar5" ( (type_descriptor "int" primitive_type) ) identifier)) ;) })) }) (else_clause "else {\n      iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n    }" else (compound_statement "{\n      iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n    }" { (expression_statement "iVar14 = (int)*(char *)((int)piVar7 + 0x27);" (assignment_expression "iVar14 = (int)*(char *)((int)piVar7 + 0x27)" identifier = (cast_expression "(int)*(char *)((int)piVar7 + 0x27)" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*(char *)((int)piVar7 + 0x27)" * (cast_expression "(char *)((int)piVar7 + 0x27)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar7 + 0x27)" ( (binary_expression "(int)piVar7 + 0x27" (cast_expression "(int)piVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))))) ;) }))) (expression_statement "local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);" (assignment_expression "local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150)" identifier = (cast_expression "(double)CONCAT44(local_1cc._4_4_,&local_150)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(local_1cc._4_4_,&local_150)" identifier (argument_list "(local_1cc._4_4_,&local_150)" ( (field_expression "local_1cc._4_4_" identifier . field_identifier) , (pointer_expression "&local_150" & identifier) ))))) ;) comment (expression_statement "FUN_001e7cb0(local_1d0,&local_150,iVar14);" (call_expression "FUN_001e7cb0(local_1d0,&local_150,iVar14)" identifier (argument_list "(local_1d0,&local_150,iVar14)" ( identifier , (pointer_expression "&local_150" & identifier) , identifier ))) ;) (expression_statement "local_1d4 = (undefined1 **)(param_1 + 0x5a3c);" (assignment_expression "local_1d4 = (undefined1 **)(param_1 + 0x5a3c)" identifier = (cast_expression "(undefined1 **)(param_1 + 0x5a3c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x5a3c)" ( (binary_expression "param_1 + 0x5a3c" identifier + number_literal) )))) ;) (expression_statement "local_1e4 = local_1c0;" (assignment_expression "local_1e4 = local_1c0" identifier = identifier) ;) (while_statement "while ((local_90 & 5) == 0) {\n      if ((local_14c != 0) && (local_150[local_14c + -1] == '\r')) {\n        *(undefined4 *)(puVar17 + -8) = 0;\n        *(int *)(puVar17 + -0xc) = local_14c + -1;\n        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;\n                    /* try { // try from 000e7e32 to 000e7e36 has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;\n        FUN_001ef780();\n      }\n      *(undefined4 *)(puVar17 + -8) = 0xc70f6907;\n      *(int *)(puVar17 + -0xc) = local_14c;\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe793a;\n      uVar6 = FUN_001e52b0();\n      local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40);\n      *(uint *)(puVar17 + -0x14) = uVar6;\n      *(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_;\n      *(uint *)(puVar17 + -0x1c) = local_1d8;\n      *(undefined1 ***)(puVar17 + -0x20) = local_1d4;\n      *(undefined4 *)(puVar17 + -0x24) = 0xe7960;\n      piVar7 = (int *)FUN_000eadf0();\n      if ((piVar7 == (int *)0x0) || (*piVar7 == 0)) {\n        *(undefined4 *)(puVar17 + -0x10) = 0x20;\n                    /* try { // try from 000e7a7b to 000e7a7f has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;\n        puVar8 = (undefined4 *)FUN_001e5200();\n        *puVar8 = 0;\n        puVar8[1] = puVar8 + 3;\n        *(undefined4 *)(puVar17 + -4) = 0;\n        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;\n        *(undefined1 **)(puVar17 + -0xc) = local_150;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;\n                    /* try { // try from 000e7aa7 to 000e7aab has its CatchHandler @ 000e8b99 */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;\n        FUN_000513a0();\n        *(undefined4 *)(puVar17 + -0xc) = 1;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8;\n        *(uint *)(puVar17 + -0x14) = uVar6;\n        *(uint *)(puVar17 + -0x18) = local_1d8;\n        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;\n        *(undefined1 **)(puVar17 + -0x20) = local_1e4;\n                    /* try { // try from 000e7ac4 to 000e7ac8 has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;\n        FUN_000ec3b0();\n        puVar17 = puVar17 + -4;\n      }\n      ppuVar4 = local_1c4;\n      piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n      if (piVar7 == (int *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88aa to 000e88ae has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -4) = 0xe88af;\n        FUN_0022c630();\n      }\n      if ((char)piVar7[7] == '\0') {\n        *(int **)(puVar17 + -0x10) = piVar7;\n                    /* try { // try from 000e79a3 to 000e79ca has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;\n        FUN_0022ccc0();\n        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);\n        iVar14 = 10;\n        if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }\n      }\n      else {\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }\n      *(int *)(puVar17 + -8) = iVar14;\n      *(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_;\n      *(undefined ****)(puVar17 + -0x10) = local_1d0;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe78f7;\n      FUN_001e7cb0();\n    }" while (parenthesized_expression "((local_90 & 5) == 0)" ( (binary_expression "(local_90 & 5) == 0" (parenthesized_expression "(local_90 & 5)" ( (binary_expression "local_90 & 5" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n      if ((local_14c != 0) && (local_150[local_14c + -1] == '\r')) {\n        *(undefined4 *)(puVar17 + -8) = 0;\n        *(int *)(puVar17 + -0xc) = local_14c + -1;\n        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;\n                    /* try { // try from 000e7e32 to 000e7e36 has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;\n        FUN_001ef780();\n      }\n      *(undefined4 *)(puVar17 + -8) = 0xc70f6907;\n      *(int *)(puVar17 + -0xc) = local_14c;\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe793a;\n      uVar6 = FUN_001e52b0();\n      local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40);\n      *(uint *)(puVar17 + -0x14) = uVar6;\n      *(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_;\n      *(uint *)(puVar17 + -0x1c) = local_1d8;\n      *(undefined1 ***)(puVar17 + -0x20) = local_1d4;\n      *(undefined4 *)(puVar17 + -0x24) = 0xe7960;\n      piVar7 = (int *)FUN_000eadf0();\n      if ((piVar7 == (int *)0x0) || (*piVar7 == 0)) {\n        *(undefined4 *)(puVar17 + -0x10) = 0x20;\n                    /* try { // try from 000e7a7b to 000e7a7f has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;\n        puVar8 = (undefined4 *)FUN_001e5200();\n        *puVar8 = 0;\n        puVar8[1] = puVar8 + 3;\n        *(undefined4 *)(puVar17 + -4) = 0;\n        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;\n        *(undefined1 **)(puVar17 + -0xc) = local_150;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;\n                    /* try { // try from 000e7aa7 to 000e7aab has its CatchHandler @ 000e8b99 */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;\n        FUN_000513a0();\n        *(undefined4 *)(puVar17 + -0xc) = 1;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8;\n        *(uint *)(puVar17 + -0x14) = uVar6;\n        *(uint *)(puVar17 + -0x18) = local_1d8;\n        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;\n        *(undefined1 **)(puVar17 + -0x20) = local_1e4;\n                    /* try { // try from 000e7ac4 to 000e7ac8 has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;\n        FUN_000ec3b0();\n        puVar17 = puVar17 + -4;\n      }\n      ppuVar4 = local_1c4;\n      piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n      if (piVar7 == (int *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88aa to 000e88ae has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -4) = 0xe88af;\n        FUN_0022c630();\n      }\n      if ((char)piVar7[7] == '\0') {\n        *(int **)(puVar17 + -0x10) = piVar7;\n                    /* try { // try from 000e79a3 to 000e79ca has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;\n        FUN_0022ccc0();\n        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);\n        iVar14 = 10;\n        if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }\n      }\n      else {\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }\n      *(int *)(puVar17 + -8) = iVar14;\n      *(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_;\n      *(undefined ****)(puVar17 + -0x10) = local_1d0;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe78f7;\n      FUN_001e7cb0();\n    }" { (if_statement "if ((local_14c != 0) && (local_150[local_14c + -1] == '\r')) {\n        *(undefined4 *)(puVar17 + -8) = 0;\n        *(int *)(puVar17 + -0xc) = local_14c + -1;\n        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;\n                    /* try { // try from 000e7e32 to 000e7e36 has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;\n        FUN_001ef780();\n      }" if (parenthesized_expression "((local_14c != 0) && (local_150[local_14c + -1] == '\r'))" ( (binary_expression "(local_14c != 0) && (local_150[local_14c + -1] == '\r')" (parenthesized_expression "(local_14c != 0)" ( (binary_expression "local_14c != 0" identifier != number_literal) )) && (parenthesized_expression "(local_150[local_14c + -1] == '\r')" ( (binary_expression "local_150[local_14c + -1] == '\r'" (subscript_expression "local_150[local_14c + -1]" identifier [ (binary_expression "local_14c + -1" identifier + number_literal) ]) == (char_literal "'\r'" ' escape_sequence ')) ))) )) (compound_statement "{\n        *(undefined4 *)(puVar17 + -8) = 0;\n        *(int *)(puVar17 + -0xc) = local_14c + -1;\n        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;\n                    /* try { // try from 000e7e32 to 000e7e36 has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;\n        FUN_001ef780();\n      }" { (expression_statement "*(undefined4 *)(puVar17 + -8) = 0;" (assignment_expression "*(undefined4 *)(puVar17 + -8) = 0" (pointer_expression "*(undefined4 *)(puVar17 + -8)" * (cast_expression "(undefined4 *)(puVar17 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -8)" ( (binary_expression "puVar17 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar17 + -0xc) = local_14c + -1;" (assignment_expression "*(int *)(puVar17 + -0xc) = local_14c + -1" (pointer_expression "*(int *)(puVar17 + -0xc)" * (cast_expression "(int *)(puVar17 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc)" ( (binary_expression "puVar17 + -0xc" identifier + number_literal) )))) = (binary_expression "local_14c + -1" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;" (assignment_expression "*(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_" (pointer_expression "*(undefined4 *)(puVar17 + -0x10)" * (cast_expression "(undefined4 *)(puVar17 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x10)" ( (binary_expression "puVar17 + -0x10" identifier + number_literal) )))) = (field_expression "local_1cc._0_4_" identifier . field_identifier)) ;) comment (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe7e37;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe7e37" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" * (cast_expression "(undefined4 *)(puVar17 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001ef780();" (call_expression "FUN_001ef780()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "*(undefined4 *)(puVar17 + -8) = 0xc70f6907;" (assignment_expression "*(undefined4 *)(puVar17 + -8) = 0xc70f6907" (pointer_expression "*(undefined4 *)(puVar17 + -8)" * (cast_expression "(undefined4 *)(puVar17 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -8)" ( (binary_expression "puVar17 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar17 + -0xc) = local_14c;" (assignment_expression "*(int *)(puVar17 + -0xc) = local_14c" (pointer_expression "*(int *)(puVar17 + -0xc)" * (cast_expression "(int *)(puVar17 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc)" ( (binary_expression "puVar17 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar17 + -0x10) = local_150;" (assignment_expression "*(undefined1 **)(puVar17 + -0x10) = local_150" (pointer_expression "*(undefined1 **)(puVar17 + -0x10)" * (cast_expression "(undefined1 **)(puVar17 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x10)" ( (binary_expression "puVar17 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe793a;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe793a" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" * (cast_expression "(undefined4 *)(puVar17 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar6 = FUN_001e52b0();" (assignment_expression "uVar6 = FUN_001e52b0()" identifier = (call_expression "FUN_001e52b0()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40);" (assignment_expression "local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40)" identifier = (binary_expression "uVar6 % *(uint *)(param_1 + 0x5a40)" identifier % (pointer_expression "*(uint *)(param_1 + 0x5a40)" * (cast_expression "(uint *)(param_1 + 0x5a40)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5a40)" ( (binary_expression "param_1 + 0x5a40" identifier + number_literal) )))))) ;) (expression_statement "*(uint *)(puVar17 + -0x14) = uVar6;" (assignment_expression "*(uint *)(puVar17 + -0x14) = uVar6" (pointer_expression "*(uint *)(puVar17 + -0x14)" * (cast_expression "(uint *)(puVar17 + -0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_;" (assignment_expression "*(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_" (pointer_expression "*(undefined4 *)(puVar17 + -0x18)" * (cast_expression "(undefined4 *)(puVar17 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x18)" ( (binary_expression "puVar17 + -0x18" identifier + number_literal) )))) = (field_expression "local_1cc._0_4_" identifier . field_identifier)) ;) (expression_statement "*(uint *)(puVar17 + -0x1c) = local_1d8;" (assignment_expression "*(uint *)(puVar17 + -0x1c) = local_1d8" (pointer_expression "*(uint *)(puVar17 + -0x1c)" * (cast_expression "(uint *)(puVar17 + -0x1c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x1c)" ( (binary_expression "puVar17 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 ***)(puVar17 + -0x20) = local_1d4;" (assignment_expression "*(undefined1 ***)(puVar17 + -0x20) = local_1d4" (pointer_expression "*(undefined1 ***)(puVar17 + -0x20)" * (cast_expression "(undefined1 ***)(puVar17 + -0x20)" ( (type_descriptor "undefined1 ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar17 + -0x20)" ( (binary_expression "puVar17 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x24) = 0xe7960;" (assignment_expression "*(undefined4 *)(puVar17 + -0x24) = 0xe7960" (pointer_expression "*(undefined4 *)(puVar17 + -0x24)" * (cast_expression "(undefined4 *)(puVar17 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x24)" ( (binary_expression "puVar17 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar7 = (int *)FUN_000eadf0();" (assignment_expression "piVar7 = (int *)FUN_000eadf0()" identifier = (cast_expression "(int *)FUN_000eadf0()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_000eadf0()" identifier (argument_list "()" ( ))))) ;) (if_statement "if ((piVar7 == (int *)0x0) || (*piVar7 == 0)) {\n        *(undefined4 *)(puVar17 + -0x10) = 0x20;\n                    /* try { // try from 000e7a7b to 000e7a7f has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;\n        puVar8 = (undefined4 *)FUN_001e5200();\n        *puVar8 = 0;\n        puVar8[1] = puVar8 + 3;\n        *(undefined4 *)(puVar17 + -4) = 0;\n        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;\n        *(undefined1 **)(puVar17 + -0xc) = local_150;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;\n                    /* try { // try from 000e7aa7 to 000e7aab has its CatchHandler @ 000e8b99 */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;\n        FUN_000513a0();\n        *(undefined4 *)(puVar17 + -0xc) = 1;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8;\n        *(uint *)(puVar17 + -0x14) = uVar6;\n        *(uint *)(puVar17 + -0x18) = local_1d8;\n        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;\n        *(undefined1 **)(puVar17 + -0x20) = local_1e4;\n                    /* try { // try from 000e7ac4 to 000e7ac8 has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;\n        FUN_000ec3b0();\n        puVar17 = puVar17 + -4;\n      }" if (parenthesized_expression "((piVar7 == (int *)0x0) || (*piVar7 == 0))" ( (binary_expression "(piVar7 == (int *)0x0) || (*piVar7 == 0)" (parenthesized_expression "(piVar7 == (int *)0x0)" ( (binary_expression "piVar7 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(*piVar7 == 0)" ( (binary_expression "*piVar7 == 0" (pointer_expression "*piVar7" * identifier) == number_literal) ))) )) (compound_statement "{\n        *(undefined4 *)(puVar17 + -0x10) = 0x20;\n                    /* try { // try from 000e7a7b to 000e7a7f has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;\n        puVar8 = (undefined4 *)FUN_001e5200();\n        *puVar8 = 0;\n        puVar8[1] = puVar8 + 3;\n        *(undefined4 *)(puVar17 + -4) = 0;\n        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;\n        *(undefined1 **)(puVar17 + -0xc) = local_150;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;\n                    /* try { // try from 000e7aa7 to 000e7aab has its CatchHandler @ 000e8b99 */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;\n        FUN_000513a0();\n        *(undefined4 *)(puVar17 + -0xc) = 1;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8;\n        *(uint *)(puVar17 + -0x14) = uVar6;\n        *(uint *)(puVar17 + -0x18) = local_1d8;\n        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;\n        *(undefined1 **)(puVar17 + -0x20) = local_1e4;\n                    /* try { // try from 000e7ac4 to 000e7ac8 has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;\n        FUN_000ec3b0();\n        puVar17 = puVar17 + -4;\n      }" { (expression_statement "*(undefined4 *)(puVar17 + -0x10) = 0x20;" (assignment_expression "*(undefined4 *)(puVar17 + -0x10) = 0x20" (pointer_expression "*(undefined4 *)(puVar17 + -0x10)" * (cast_expression "(undefined4 *)(puVar17 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x10)" ( (binary_expression "puVar17 + -0x10" identifier + number_literal) )))) = number_literal) ;) comment (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe7a80;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe7a80" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" * (cast_expression "(undefined4 *)(puVar17 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "puVar8 = (undefined4 *)FUN_001e5200();" (assignment_expression "puVar8 = (undefined4 *)FUN_001e5200()" identifier = (cast_expression "(undefined4 *)FUN_001e5200()" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_001e5200()" identifier (argument_list "()" ( ))))) ;) (expression_statement "*puVar8 = 0;" (assignment_expression "*puVar8 = 0" (pointer_expression "*puVar8" * identifier) = number_literal) ;) (expression_statement "puVar8[1] = puVar8 + 3;" (assignment_expression "puVar8[1] = puVar8 + 3" (subscript_expression "puVar8[1]" identifier [ number_literal ]) = (binary_expression "puVar8 + 3" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar17 + -4) = 0;" (assignment_expression "*(undefined4 *)(puVar17 + -4) = 0" (pointer_expression "*(undefined4 *)(puVar17 + -4)" * (cast_expression "(undefined4 *)(puVar17 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -4)" ( (binary_expression "puVar17 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined1 **)(puVar17 + -8) = local_150 + local_14c;" (assignment_expression "*(undefined1 **)(puVar17 + -8) = local_150 + local_14c" (pointer_expression "*(undefined1 **)(puVar17 + -8)" * (cast_expression "(undefined1 **)(puVar17 + -8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -8)" ( (binary_expression "puVar17 + -8" identifier + number_literal) )))) = (binary_expression "local_150 + local_14c" identifier + identifier)) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xc) = local_150;" (assignment_expression "*(undefined1 **)(puVar17 + -0xc) = local_150" (pointer_expression "*(undefined1 **)(puVar17 + -0xc)" * (cast_expression "(undefined1 **)(puVar17 + -0xc)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xc)" ( (binary_expression "puVar17 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;" (assignment_expression "*(undefined4 **)(puVar17 + -0x10) = puVar8 + 1" (pointer_expression "*(undefined4 **)(puVar17 + -0x10)" * (cast_expression "(undefined4 **)(puVar17 + -0x10)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x10)" ( (binary_expression "puVar17 + -0x10" identifier + number_literal) )))) = (binary_expression "puVar8 + 1" identifier + number_literal)) ;) comment (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe7aac;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe7aac" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" * (cast_expression "(undefined4 *)(puVar17 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000513a0();" (call_expression "FUN_000513a0()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(undefined4 *)(puVar17 + -0xc) = 1;" (assignment_expression "*(undefined4 *)(puVar17 + -0xc) = 1" (pointer_expression "*(undefined4 *)(puVar17 + -0xc)" * (cast_expression "(undefined4 *)(puVar17 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc)" ( (binary_expression "puVar17 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 **)(puVar17 + -0x10) = puVar8;" (assignment_expression "*(undefined4 **)(puVar17 + -0x10) = puVar8" (pointer_expression "*(undefined4 **)(puVar17 + -0x10)" * (cast_expression "(undefined4 **)(puVar17 + -0x10)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x10)" ( (binary_expression "puVar17 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar17 + -0x14) = uVar6;" (assignment_expression "*(uint *)(puVar17 + -0x14) = uVar6" (pointer_expression "*(uint *)(puVar17 + -0x14)" * (cast_expression "(uint *)(puVar17 + -0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar17 + -0x18) = local_1d8;" (assignment_expression "*(uint *)(puVar17 + -0x18) = local_1d8" (pointer_expression "*(uint *)(puVar17 + -0x18)" * (cast_expression "(uint *)(puVar17 + -0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x18)" ( (binary_expression "puVar17 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 ***)(puVar17 + -0x1c) = local_1d4;" (assignment_expression "*(undefined1 ***)(puVar17 + -0x1c) = local_1d4" (pointer_expression "*(undefined1 ***)(puVar17 + -0x1c)" * (cast_expression "(undefined1 ***)(puVar17 + -0x1c)" ( (type_descriptor "undefined1 ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar17 + -0x1c)" ( (binary_expression "puVar17 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar17 + -0x20) = local_1e4;" (assignment_expression "*(undefined1 **)(puVar17 + -0x20) = local_1e4" (pointer_expression "*(undefined1 **)(puVar17 + -0x20)" * (cast_expression "(undefined1 **)(puVar17 + -0x20)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x20)" ( (binary_expression "puVar17 + -0x20" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;" (assignment_expression "*(undefined4 *)(puVar17 + -0x24) = 0xe7ac9" (pointer_expression "*(undefined4 *)(puVar17 + -0x24)" * (cast_expression "(undefined4 *)(puVar17 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x24)" ( (binary_expression "puVar17 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000ec3b0();" (call_expression "FUN_000ec3b0()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar17 = puVar17 + -4;" (assignment_expression "puVar17 = puVar17 + -4" identifier = (binary_expression "puVar17 + -4" identifier + number_literal)) ;) })) (expression_statement "ppuVar4 = local_1c4;" (assignment_expression "ppuVar4 = local_1c4" identifier = identifier) ;) (expression_statement "piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);" (assignment_expression "piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3])" identifier = (pointer_expression "*(int **)((int)aiStack_b8 + (int)local_134[-3])" * (cast_expression "(int **)((int)aiStack_b8 + (int)local_134[-3])" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)aiStack_b8 + (int)local_134[-3])" ( (binary_expression "(int)aiStack_b8 + (int)local_134[-3]" (cast_expression "(int)aiStack_b8" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_134[-3]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "local_134[-3]" identifier [ number_literal ]))) ))))) ;) (if_statement "if (piVar7 == (int *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88aa to 000e88ae has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -4) = 0xe88af;\n        FUN_0022c630();\n      }" if (parenthesized_expression "(piVar7 == (int *)0x0)" ( (binary_expression "piVar7 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88aa to 000e88ae has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -4) = 0xe88af;\n        FUN_0022c630();\n      }" { comment comment (expression_statement "*(undefined4 *)(puVar17 + -4) = 0xe88af;" (assignment_expression "*(undefined4 *)(puVar17 + -4) = 0xe88af" (pointer_expression "*(undefined4 *)(puVar17 + -4)" * (cast_expression "(undefined4 *)(puVar17 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -4)" ( (binary_expression "puVar17 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0022c630();" (call_expression "FUN_0022c630()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if ((char)piVar7[7] == '\0') {\n        *(int **)(puVar17 + -0x10) = piVar7;\n                    /* try { // try from 000e79a3 to 000e79ca has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;\n        FUN_0022ccc0();\n        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);\n        iVar14 = 10;\n        if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }\n      }\n      else {\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }" if (parenthesized_expression "((char)piVar7[7] == '\0')" ( (binary_expression "(char)piVar7[7] == '\0'" (cast_expression "(char)piVar7[7]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "piVar7[7]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        *(int **)(puVar17 + -0x10) = piVar7;\n                    /* try { // try from 000e79a3 to 000e79ca has its CatchHandler @ 000e8b8b */\n        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;\n        FUN_0022ccc0();\n        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);\n        iVar14 = 10;\n        if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }\n      }" { (expression_statement "*(int **)(puVar17 + -0x10) = piVar7;" (assignment_expression "*(int **)(puVar17 + -0x10) = piVar7" (pointer_expression "*(int **)(puVar17 + -0x10)" * (cast_expression "(int **)(puVar17 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x10)" ( (binary_expression "puVar17 + -0x10" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe79a8;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe79a8" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" * (cast_expression "(undefined4 *)(puVar17 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0022ccc0();" (call_expression "FUN_0022ccc0()" identifier (argument_list "()" ( ))) ;) (expression_statement "ppuVar2 = *(undefined ***)(*piVar7 + 0x18);" (assignment_expression "ppuVar2 = *(undefined ***)(*piVar7 + 0x18)" identifier = (pointer_expression "*(undefined ***)(*piVar7 + 0x18)" * (cast_expression "(undefined ***)(*piVar7 + 0x18)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(*piVar7 + 0x18)" ( (binary_expression "*piVar7 + 0x18" (pointer_expression "*piVar7" * identifier) + number_literal) ))))) ;) (expression_statement "iVar14 = 10;" (assignment_expression "iVar14 = 10" identifier = number_literal) ;) (if_statement "if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }" if (parenthesized_expression "(ppuVar2 != ppuVar4 + -0xba9e0)" ( (binary_expression "ppuVar2 != ppuVar4 + -0xba9e0" identifier != (binary_expression "ppuVar4 + -0xba9e0" identifier + number_literal)) )) (compound_statement "{\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }" { (expression_statement "*(undefined4 *)(puVar17 + -0xc) = 10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xc) = 10" (pointer_expression "*(undefined4 *)(puVar17 + -0xc)" * (cast_expression "(undefined4 *)(puVar17 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc)" ( (binary_expression "puVar17 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int **)(puVar17 + -0x10) = piVar7;" (assignment_expression "*(int **)(puVar17 + -0x10) = piVar7" (pointer_expression "*(int **)(puVar17 + -0x10)" * (cast_expression "(int **)(puVar17 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x10)" ( (binary_expression "puVar17 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe79cb;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe79cb" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" * (cast_expression "(undefined4 *)(puVar17 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar5 = (*(code *)ppuVar2)();" (assignment_expression "cVar5 = (*(code *)ppuVar2)()" identifier = (call_expression "(*(code *)ppuVar2)()" (parenthesized_expression "(*(code *)ppuVar2)" ( (pointer_expression "*(code *)ppuVar2" * (cast_expression "(code *)ppuVar2" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;) (expression_statement "iVar14 = (int)cVar5;" (assignment_expression "iVar14 = (int)cVar5" identifier = (cast_expression "(int)cVar5" ( (type_descriptor "int" primitive_type) ) identifier)) ;) })) }) (else_clause "else {\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }" else (compound_statement "{\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }" { (expression_statement "iVar14 = (int)*(char *)((int)piVar7 + 0x27);" (assignment_expression "iVar14 = (int)*(char *)((int)piVar7 + 0x27)" identifier = (cast_expression "(int)*(char *)((int)piVar7 + 0x27)" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*(char *)((int)piVar7 + 0x27)" * (cast_expression "(char *)((int)piVar7 + 0x27)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar7 + 0x27)" ( (binary_expression "(int)piVar7 + 0x27" (cast_expression "(int)piVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))))) ;) }))) (expression_statement "*(int *)(puVar17 + -8) = iVar14;" (assignment_expression "*(int *)(puVar17 + -8) = iVar14" (pointer_expression "*(int *)(puVar17 + -8)" * (cast_expression "(int *)(puVar17 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -8)" ( (binary_expression "puVar17 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_;" (assignment_expression "*(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_" (pointer_expression "*(undefined4 *)(puVar17 + -0xc)" * (cast_expression "(undefined4 *)(puVar17 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc)" ( (binary_expression "puVar17 + -0xc" identifier + number_literal) )))) = (field_expression "local_1cc._0_4_" identifier . field_identifier)) ;) (expression_statement "*(undefined ****)(puVar17 + -0x10) = local_1d0;" (assignment_expression "*(undefined ****)(puVar17 + -0x10) = local_1d0" (pointer_expression "*(undefined ****)(puVar17 + -0x10)" * (cast_expression "(undefined ****)(puVar17 + -0x10)" ( (type_descriptor "undefined ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (parenthesized_expression "(puVar17 + -0x10)" ( (binary_expression "puVar17 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe78f7;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe78f7" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" * (cast_expression "(undefined4 *)(puVar17 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001e7cb0();" (call_expression "FUN_001e7cb0()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (local_150 != local_1e0) {\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe7aef;\n      FUN_001e6db0();\n    }" if (parenthesized_expression "(local_150 != local_1e0)" ( (binary_expression "local_150 != local_1e0" identifier != identifier) )) (compound_statement "{\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe7aef;\n      FUN_001e6db0();\n    }" { (expression_statement "*(undefined1 **)(puVar17 + -0x10) = local_150;" (assignment_expression "*(undefined1 **)(puVar17 + -0x10) = local_150" (pointer_expression "*(undefined1 **)(puVar17 + -0x10)" * (cast_expression "(undefined1 **)(puVar17 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x10)" ( (binary_expression "puVar17 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe7aef;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe7aef" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" * (cast_expression "(undefined4 *)(puVar17 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001e6db0();" (call_expression "FUN_001e6db0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "ppuVar4 = local_1c4;" (assignment_expression "ppuVar4 = local_1c4" identifier = identifier) ;) (expression_statement "*(undefined ****)(puVar17 + -0x10) = local_1dc;" (assignment_expression "*(undefined ****)(puVar17 + -0x10) = local_1dc" (pointer_expression "*(undefined ****)(puVar17 + -0x10)" * (cast_expression "(undefined ****)(puVar17 + -0x10)" ( (type_descriptor "undefined ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (parenthesized_expression "(puVar17 + -0x10)" ( (binary_expression "puVar17 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_134 = (undefined ***)(local_200 + 3);" (assignment_expression "local_134 = (undefined ***)(local_200 + 3)" identifier = (cast_expression "(undefined ***)(local_200 + 3)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(local_200 + 3)" ( (binary_expression "local_200 + 3" identifier + number_literal) )))) ;) (expression_statement "local_a4[0] = local_200 + 8;" (assignment_expression "local_a4[0] = local_200 + 8" (subscript_expression "local_a4[0]" identifier [ number_literal ]) = (binary_expression "local_200 + 8" identifier + number_literal)) ;) (expression_statement "local_12c[0] = local_1c4 + -0x9f2;" (assignment_expression "local_12c[0] = local_1c4 + -0x9f2" (subscript_expression "local_12c[0]" identifier [ number_literal ]) = (binary_expression "local_1c4 + -0x9f2" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe7b2f;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe7b2f" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" * (cast_expression "(undefined4 *)(puVar17 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00216e90();" (call_expression "FUN_00216e90()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(undefined1 **)(puVar17 + -0x10) = local_f4;" (assignment_expression "*(undefined1 **)(puVar17 + -0x10) = local_f4" (pointer_expression "*(undefined1 **)(puVar17 + -0x10)" * (cast_expression "(undefined1 **)(puVar17 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x10)" ( (binary_expression "puVar17 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe7b3d;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe7b3d" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" * (cast_expression "(undefined4 *)(puVar17 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001e75f0();" (call_expression "FUN_001e75f0()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_12c[0] = ppuVar4 + -0xbd7;" (assignment_expression "local_12c[0] = ppuVar4 + -0xbd7" (subscript_expression "local_12c[0]" identifier [ number_literal ]) = (binary_expression "ppuVar4 + -0xbd7" identifier + number_literal)) ;) (expression_statement "*(undefined1 **)(puVar17 + -0x10) = local_110;" (assignment_expression "*(undefined1 **)(puVar17 + -0x10) = local_110" (pointer_expression "*(undefined1 **)(puVar17 + -0x10)" * (cast_expression "(undefined1 **)(puVar17 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x10)" ( (binary_expression "puVar17 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe7b5a;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe7b5a" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" * (cast_expression "(undefined4 *)(puVar17 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001e9510();" (call_expression "FUN_001e9510()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_134 = local_1f4;" (assignment_expression "local_134 = local_1f4" identifier = identifier) ;) (expression_statement "*(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;" (assignment_expression "*(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8" (pointer_expression "*(undefined **)((int)&local_134 + (int)local_1f4[-3])" * (cast_expression "(undefined **)((int)&local_134 + (int)local_1f4[-3])" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&local_134 + (int)local_1f4[-3])" ( (binary_expression "(int)&local_134 + (int)local_1f4[-3]" (cast_expression "(int)&local_134" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_134" & identifier)) + (cast_expression "(int)local_1f4[-3]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "local_1f4[-3]" identifier [ number_literal ]))) )))) = identifier) ;) (expression_statement "local_130 = 0;" (assignment_expression "local_130 = 0" identifier = number_literal) ;) (expression_statement "local_a4[0] = local_1fc + 2;" (assignment_expression "local_a4[0] = local_1fc + 2" (subscript_expression "local_a4[0]" identifier [ number_literal ]) = (binary_expression "local_1fc + 2" identifier + number_literal)) ;) (expression_statement "*(undefined ****)(puVar17 + -0x10) = local_1e8;" (assignment_expression "*(undefined ****)(puVar17 + -0x10) = local_1e8" (pointer_expression "*(undefined ****)(puVar17 + -0x10)" * (cast_expression "(undefined ****)(puVar17 + -0x10)" ( (type_descriptor "undefined ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (parenthesized_expression "(puVar17 + -0x10)" ( (binary_expression "puVar17 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe7b9b;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe7b9b" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" * (cast_expression "(undefined4 *)(puVar17 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0022c040();" (call_expression "FUN_0022c040()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar18 = puVar17;" (assignment_expression "puVar18 = puVar17" identifier = identifier) ;) })) (if_statement "if ((*(char *)(param_1 + 0x72d) != '\0') && (*(char *)(param_1 + 0x42e0) == '\0')) {\n    *(int *)(param_1 + 0x42e4) = (int)local_1c4 + -0x10e8db;\n  }" if (parenthesized_expression "((*(char *)(param_1 + 0x72d) != '\0') && (*(char *)(param_1 + 0x42e0) == '\0'))" ( (binary_expression "(*(char *)(param_1 + 0x72d) != '\0') && (*(char *)(param_1 + 0x42e0) == '\0')" (parenthesized_expression "(*(char *)(param_1 + 0x72d) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x72d) != '\0'" (pointer_expression "*(char *)(param_1 + 0x72d)" * (cast_expression "(char *)(param_1 + 0x72d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x72d)" ( (binary_expression "param_1 + 0x72d" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(*(char *)(param_1 + 0x42e0) == '\0')" ( (binary_expression "*(char *)(param_1 + 0x42e0) == '\0'" (pointer_expression "*(char *)(param_1 + 0x42e0)" * (cast_expression "(char *)(param_1 + 0x42e0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x42e0)" ( (binary_expression "param_1 + 0x42e0" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n    *(int *)(param_1 + 0x42e4) = (int)local_1c4 + -0x10e8db;\n  }" { (expression_statement "*(int *)(param_1 + 0x42e4) = (int)local_1c4 + -0x10e8db;" (assignment_expression "*(int *)(param_1 + 0x42e4) = (int)local_1c4 + -0x10e8db" (pointer_expression "*(int *)(param_1 + 0x42e4)" * (cast_expression "(int *)(param_1 + 0x42e4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x42e4)" ( (binary_expression "param_1 + 0x42e4" identifier + number_literal) )))) = (binary_expression "(int)local_1c4 + -0x10e8db" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) })) (if_statement "if ((*(char *)(param_1 + 0x1a25) != '\0') && (*(char *)(param_1 + 0x1fc) == '\0')) {\n    *(undefined1 *)(param_1 + 0x1fd) = 1;\n  }" if (parenthesized_expression "((*(char *)(param_1 + 0x1a25) != '\0') && (*(char *)(param_1 + 0x1fc) == '\0'))" ( (binary_expression "(*(char *)(param_1 + 0x1a25) != '\0') && (*(char *)(param_1 + 0x1fc) == '\0')" (parenthesized_expression "(*(char *)(param_1 + 0x1a25) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x1a25) != '\0'" (pointer_expression "*(char *)(param_1 + 0x1a25)" * (cast_expression "(char *)(param_1 + 0x1a25)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1a25)" ( (binary_expression "param_1 + 0x1a25" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(*(char *)(param_1 + 0x1fc) == '\0')" ( (binary_expression "*(char *)(param_1 + 0x1fc) == '\0'" (pointer_expression "*(char *)(param_1 + 0x1fc)" * (cast_expression "(char *)(param_1 + 0x1fc)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1fc)" ( (binary_expression "param_1 + 0x1fc" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n    *(undefined1 *)(param_1 + 0x1fd) = 1;\n  }" { (expression_statement "*(undefined1 *)(param_1 + 0x1fd) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x1fd) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x1fd)" * (cast_expression "(undefined1 *)(param_1 + 0x1fd)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1fd)" ( (binary_expression "param_1 + 0x1fd" identifier + number_literal) )))) = number_literal) ;) })) (expression_statement "*(int *)(puVar18 + -0x10) = param_1;" (assignment_expression "*(int *)(puVar18 + -0x10) = param_1" (pointer_expression "*(int *)(puVar18 + -0x10)" * (cast_expression "(int *)(puVar18 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe7bef;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe7bef" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000ddde0();" (call_expression "FUN_000ddde0()" identifier (argument_list "()" ( ))) ;) (if_statement "if (*(char *)(param_1 + 0x1a25) == '\0') {\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      if (*(char *)(param_1 + 0x5938) != '\0') {\n        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8b0f to 000e8b13 has its CatchHandler @ 000e8b37 */\n        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;\n        FUN_00065450();\n      }\n      if (*(char *)(param_1 + 0x318d) != '\0') {\n        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;\n        FUN_00065450();\n      }\n    }\n    if (*(int *)(param_1 + 0x1478) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe898c;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8994;\n      FUN_00065450();\n    }\n    if (*(int *)(param_1 + 0x1428) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c0;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e89c3 to 000e89c7 has its CatchHandler @ 000e8b37 */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c8;\n      FUN_00065450();\n    }\n    if ((*(char *)(param_1 + 0x318d) != '\0') && (*(int *)(param_1 + 0x3288) != 0)) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe7e13;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b;\n      FUN_00065450();\n    }\n  }\n  else {\n    if (*(char *)(param_1 + 0x5938) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8aea;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe892f;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8937;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x318d) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe894e;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8956;\n      FUN_00065450();\n    }\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0x1a25) == '\0')" ( (binary_expression "*(char *)(param_1 + 0x1a25) == '\0'" (pointer_expression "*(char *)(param_1 + 0x1a25)" * (cast_expression "(char *)(param_1 + 0x1a25)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1a25)" ( (binary_expression "param_1 + 0x1a25" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      if (*(char *)(param_1 + 0x5938) != '\0') {\n        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8b0f to 000e8b13 has its CatchHandler @ 000e8b37 */\n        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;\n        FUN_00065450();\n      }\n      if (*(char *)(param_1 + 0x318d) != '\0') {\n        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;\n        FUN_00065450();\n      }\n    }\n    if (*(int *)(param_1 + 0x1478) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe898c;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8994;\n      FUN_00065450();\n    }\n    if (*(int *)(param_1 + 0x1428) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c0;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e89c3 to 000e89c7 has its CatchHandler @ 000e8b37 */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c8;\n      FUN_00065450();\n    }\n    if ((*(char *)(param_1 + 0x318d) != '\0') && (*(int *)(param_1 + 0x3288) != 0)) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe7e13;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b;\n      FUN_00065450();\n    }\n  }" { (if_statement "if (*(char *)(param_1 + 0x2931) != '\0') {\n      if (*(char *)(param_1 + 0x5938) != '\0') {\n        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8b0f to 000e8b13 has its CatchHandler @ 000e8b37 */\n        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;\n        FUN_00065450();\n      }\n      if (*(char *)(param_1 + 0x318d) != '\0') {\n        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;\n        FUN_00065450();\n      }\n    }" if (parenthesized_expression "(*(char *)(param_1 + 0x2931) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x2931) != '\0'" (pointer_expression "*(char *)(param_1 + 0x2931)" * (cast_expression "(char *)(param_1 + 0x2931)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2931)" ( (binary_expression "param_1 + 0x2931" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      if (*(char *)(param_1 + 0x5938) != '\0') {\n        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8b0f to 000e8b13 has its CatchHandler @ 000e8b37 */\n        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;\n        FUN_00065450();\n      }\n      if (*(char *)(param_1 + 0x318d) != '\0') {\n        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;\n        FUN_00065450();\n      }\n    }" { (if_statement "if (*(char *)(param_1 + 0x5938) != '\0') {\n        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8b0f to 000e8b13 has its CatchHandler @ 000e8b37 */\n        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;\n        FUN_00065450();\n      }" if (parenthesized_expression "(*(char *)(param_1 + 0x5938) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x5938) != '\0'" (pointer_expression "*(char *)(param_1 + 0x5938)" * (cast_expression "(char *)(param_1 + 0x5938)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5938)" ( (binary_expression "param_1 + 0x5938" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8b0f to 000e8b13 has its CatchHandler @ 000e8b37 */\n        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;\n        FUN_00065450();\n      }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f6ac" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8b0c" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) comment comment (expression_statement "*(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;" (assignment_expression "*(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14" (pointer_expression "*(undefined1 **)(puVar18 + -0x14)" * (cast_expression "(undefined1 **)(puVar18 + -0x14)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = (pointer_expression "&LAB_000e8b14" & identifier)) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(char *)(param_1 + 0x318d) != '\0') {\n        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;\n        FUN_00065450();\n      }" if (parenthesized_expression "(*(char *)(param_1 + 0x318d) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x318d) != '\0'" (pointer_expression "*(char *)(param_1 + 0x318d)" * (cast_expression "(char *)(param_1 + 0x318d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x318d)" ( (binary_expression "param_1 + 0x318d" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;\n        FUN_00065450();\n      }" { (expression_statement "*(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;" (assignment_expression "*(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393" (pointer_expression "*(int *)(puVar18 + -0x10)" * (cast_expression "(int *)(puVar18 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "(int)local_1c4 + -0x100393" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe896d;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe896d" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8975;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8975" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) })) (if_statement "if (*(int *)(param_1 + 0x1478) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe898c;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8994;\n      FUN_00065450();\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0x1478) != 0)" ( (binary_expression "*(int *)(param_1 + 0x1478) != 0" (pointer_expression "*(int *)(param_1 + 0x1478)" * (cast_expression "(int *)(param_1 + 0x1478)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1478)" ( (binary_expression "param_1 + 0x1478" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe898c;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8994;\n      FUN_00065450();\n    }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f69b" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe898c;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe898c" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8994;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8994" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(int *)(param_1 + 0x1428) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c0;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e89c3 to 000e89c7 has its CatchHandler @ 000e8b37 */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c8;\n      FUN_00065450();\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0x1428) != 0)" ( (binary_expression "*(int *)(param_1 + 0x1428) != 0" (pointer_expression "*(int *)(param_1 + 0x1428)" * (cast_expression "(int *)(param_1 + 0x1428)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1428)" ( (binary_expression "param_1 + 0x1428" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c0;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e89c3 to 000e89c7 has its CatchHandler @ 000e8b37 */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c8;\n      FUN_00065450();\n    }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f690" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe89c0;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe89c0" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) comment comment (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe89c8;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe89c8" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if ((*(char *)(param_1 + 0x318d) != '\0') && (*(int *)(param_1 + 0x3288) != 0)) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe7e13;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b;\n      FUN_00065450();\n    }" if (parenthesized_expression "((*(char *)(param_1 + 0x318d) != '\0') && (*(int *)(param_1 + 0x3288) != 0))" ( (binary_expression "(*(char *)(param_1 + 0x318d) != '\0') && (*(int *)(param_1 + 0x3288) != 0)" (parenthesized_expression "(*(char *)(param_1 + 0x318d) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x318d) != '\0'" (pointer_expression "*(char *)(param_1 + 0x318d)" * (cast_expression "(char *)(param_1 + 0x318d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x318d)" ( (binary_expression "param_1 + 0x318d" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(*(int *)(param_1 + 0x3288) != 0)" ( (binary_expression "*(int *)(param_1 + 0x3288) != 0" (pointer_expression "*(int *)(param_1 + 0x3288)" * (cast_expression "(int *)(param_1 + 0x3288)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3288)" ( (binary_expression "param_1 + 0x3288" identifier + number_literal) )))) != number_literal) ))) )) (compound_statement "{\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe7e13;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b;\n      FUN_00065450();\n    }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f684" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe7e13;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe7e13" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b;" (assignment_expression "*(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b" (pointer_expression "*(undefined **)(puVar18 + -0x14)" * (cast_expression "(undefined **)(puVar18 + -0x14)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = (pointer_expression "&UNK_000e7e1b" & identifier)) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) }) (else_clause "else {\n    if (*(char *)(param_1 + 0x5938) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8aea;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe892f;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8937;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x318d) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe894e;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8956;\n      FUN_00065450();\n    }\n  }" else (compound_statement "{\n    if (*(char *)(param_1 + 0x5938) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8aea;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe892f;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8937;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x318d) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe894e;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8956;\n      FUN_00065450();\n    }\n  }" { (if_statement "if (*(char *)(param_1 + 0x5938) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8aea;\n      FUN_00065450();\n    }" if (parenthesized_expression "(*(char *)(param_1 + 0x5938) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x5938) != '\0'" (pointer_expression "*(char *)(param_1 + 0x5938)" * (cast_expression "(char *)(param_1 + 0x5938)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5938)" ( (binary_expression "param_1 + 0x5938" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8aea;\n      FUN_00065450();\n    }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f6bf" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8ae2" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8aea;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8aea" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(char *)(param_1 + 0x2931) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe892f;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8937;\n      FUN_00065450();\n    }" if (parenthesized_expression "(*(char *)(param_1 + 0x2931) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x2931) != '\0'" (pointer_expression "*(char *)(param_1 + 0x2931)" * (cast_expression "(char *)(param_1 + 0x2931)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2931)" ( (binary_expression "param_1 + 0x2931" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe892f;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8937;\n      FUN_00065450();\n    }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f6b5" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe892f;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe892f" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8937;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8937" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(char *)(param_1 + 0x318d) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe894e;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8956;\n      FUN_00065450();\n    }" if (parenthesized_expression "(*(char *)(param_1 + 0x318d) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x318d) != '\0'" (pointer_expression "*(char *)(param_1 + 0x318d)" * (cast_expression "(char *)(param_1 + 0x318d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x318d)" ( (binary_expression "param_1 + 0x318d" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe894e;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8956;\n      FUN_00065450();\n    }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f6a3" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe894e;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe894e" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8956;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8956" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) }))) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = *(undefined4 *)(param_1 + 0x27ec);" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = *(undefined4 *)(param_1 + 0x27ec)" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(param_1 + 0x27ec)" * (cast_expression "(undefined4 *)(param_1 + 0x27ec)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x27ec)" ( (binary_expression "param_1 + 0x27ec" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe7c40;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe7c40" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar14 = FUN_000dd760();" (assignment_expression "iVar14 = FUN_000dd760()" identifier = (call_expression "FUN_000dd760()" identifier (argument_list "()" ( )))) ;) (if_statement "if ((iVar14 != 0) &&\n     (((*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||\n      (*(char *)(param_1 + 0x318d) != '\0')))) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f678;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8910;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8918;\n    FUN_00065450();\n  }" if (parenthesized_expression "((iVar14 != 0) &&\n     (((*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||\n      (*(char *)(param_1 + 0x318d) != '\0'))))" ( (binary_expression "(iVar14 != 0) &&\n     (((*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||\n      (*(char *)(param_1 + 0x318d) != '\0')))" (parenthesized_expression "(iVar14 != 0)" ( (binary_expression "iVar14 != 0" identifier != number_literal) )) && (parenthesized_expression "(((*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||\n      (*(char *)(param_1 + 0x318d) != '\0')))" ( (parenthesized_expression "((*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||\n      (*(char *)(param_1 + 0x318d) != '\0'))" ( (binary_expression "(*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||\n      (*(char *)(param_1 + 0x318d) != '\0')" (parenthesized_expression "(*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0'))" ( (binary_expression "*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')" (binary_expression "*(char *)(param_1 + 0x1a25) != '\0'" (pointer_expression "*(char *)(param_1 + 0x1a25)" * (cast_expression "(char *)(param_1 + 0x1a25)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1a25)" ( (binary_expression "param_1 + 0x1a25" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) || (parenthesized_expression "(*(char *)(param_1 + 0x2931) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x2931) != '\0'" (pointer_expression "*(char *)(param_1 + 0x2931)" * (cast_expression "(char *)(param_1 + 0x2931)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2931)" ( (binary_expression "param_1 + 0x2931" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) ))) )) || (parenthesized_expression "(*(char *)(param_1 + 0x318d) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x318d) != '\0'" (pointer_expression "*(char *)(param_1 + 0x318d)" * (cast_expression "(char *)(param_1 + 0x318d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x318d)" ( (binary_expression "param_1 + 0x318d" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) ))) )) ))) )) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f678;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8910;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8918;\n    FUN_00065450();\n  }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f678;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f678" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f678" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8910;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8910" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8918;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8918" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if ((*(char *)(param_1 + 0x1ae4) != '\0') &&\n     ((dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1)))) {\n    local_1cc = dVar1;\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f668;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe88cc;\n    uVar11 = gettext();\n    dVar1 = local_1cc;\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(double *)(puVar18 + -0xc) = dVar1;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88d9 to 000e8993 has its CatchHandler @ 000e8b37 */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe88de;\n    FUN_00065450();\n  }" if (parenthesized_expression "((*(char *)(param_1 + 0x1ae4) != '\0') &&\n     ((dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1))))" ( (binary_expression "(*(char *)(param_1 + 0x1ae4) != '\0') &&\n     ((dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1)))" (parenthesized_expression "(*(char *)(param_1 + 0x1ae4) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x1ae4) != '\0'" (pointer_expression "*(char *)(param_1 + 0x1ae4)" * (cast_expression "(char *)(param_1 + 0x1ae4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1ae4)" ( (binary_expression "param_1 + 0x1ae4" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "((dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1)))" ( (parenthesized_expression "(dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1))" ( (comma_expression "dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1)" (assignment_expression "dVar1 = *(double *)(param_1 + 0x1ae8)" identifier = (pointer_expression "*(double *)(param_1 + 0x1ae8)" * (cast_expression "(double *)(param_1 + 0x1ae8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1ae8)" ( (binary_expression "param_1 + 0x1ae8" identifier + number_literal) ))))) , (binary_expression "dVar1 < 0.0 || (1.0 <= dVar1)" (binary_expression "dVar1 < 0.0" identifier < number_literal) || (parenthesized_expression "(1.0 <= dVar1)" ( (binary_expression "1.0 <= dVar1" number_literal <= identifier) )))) )) ))) )) (compound_statement "{\n    local_1cc = dVar1;\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f668;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe88cc;\n    uVar11 = gettext();\n    dVar1 = local_1cc;\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(double *)(puVar18 + -0xc) = dVar1;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88d9 to 000e8993 has its CatchHandler @ 000e8b37 */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe88de;\n    FUN_00065450();\n  }" { (expression_statement "local_1cc = dVar1;" (assignment_expression "local_1cc = dVar1" identifier = identifier) ;) (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f668;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f668" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f668" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe88cc;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe88cc" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "dVar1 = local_1cc;" (assignment_expression "dVar1 = local_1cc" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(double *)(puVar18 + -0xc) = dVar1;" (assignment_expression "*(double *)(puVar18 + -0xc) = dVar1" (pointer_expression "*(double *)(puVar18 + -0xc)" * (cast_expression "(double *)(puVar18 + -0xc)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0xc)" ( (binary_expression "puVar18 + -0xc" identifier + number_literal) )))) = identifier) ;) comment comment (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe88de;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe88de" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(char *)(param_1 + 0x5a1c) == '\0') {\n    if (*(int *)(param_1 + 0x5a10) == 0) goto LAB_000e7d53;\n  }\n  else if (*(int *)(param_1 + 0x5a10) == 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a66;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a6e;\n    FUN_00065450();\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0x5a1c) == '\0')" ( (binary_expression "*(char *)(param_1 + 0x5a1c) == '\0'" (pointer_expression "*(char *)(param_1 + 0x5a1c)" * (cast_expression "(char *)(param_1 + 0x5a1c)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5a1c)" ( (binary_expression "param_1 + 0x5a1c" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (*(int *)(param_1 + 0x5a10) == 0) goto LAB_000e7d53;\n  }" { (if_statement "if (*(int *)(param_1 + 0x5a10) == 0) goto LAB_000e7d53;" if (parenthesized_expression "(*(int *)(param_1 + 0x5a10) == 0)" ( (binary_expression "*(int *)(param_1 + 0x5a10) == 0" (pointer_expression "*(int *)(param_1 + 0x5a10)" * (cast_expression "(int *)(param_1 + 0x5a10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5a10)" ( (binary_expression "param_1 + 0x5a10" identifier + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_000e7d53;" goto statement_identifier ;)) }) (else_clause "else if (*(int *)(param_1 + 0x5a10) == 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a66;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a6e;\n    FUN_00065450();\n  }" else (if_statement "if (*(int *)(param_1 + 0x5a10) == 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a66;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a6e;\n    FUN_00065450();\n  }" if (parenthesized_expression "(*(int *)(param_1 + 0x5a10) == 0)" ( (binary_expression "*(int *)(param_1 + 0x5a10) == 0" (pointer_expression "*(int *)(param_1 + 0x5a10)" * (cast_expression "(int *)(param_1 + 0x5a10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5a10)" ( (binary_expression "param_1 + 0x5a10" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a66;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a6e;\n    FUN_00065450();\n  }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f658" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8a66;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8a66" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8a6e;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8a6e" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })))) (if_statement "if (*(char *)(param_1 + 0x318d) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f63c;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a85;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a8d;\n    FUN_00065450();\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0x318d) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x318d) != '\0'" (pointer_expression "*(char *)(param_1 + 0x318d)" * (cast_expression "(char *)(param_1 + 0x318d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x318d)" ( (binary_expression "param_1 + 0x318d" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f63c;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a85;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a8d;\n    FUN_00065450();\n  }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f63c;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f63c" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f63c" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8a85;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8a85" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8a8d;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8a8d" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(char *)(param_1 + 0x3095) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f630;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aa4;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aac;\n    FUN_00065450();\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0x3095) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x3095) != '\0'" (pointer_expression "*(char *)(param_1 + 0x3095)" * (cast_expression "(char *)(param_1 + 0x3095)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3095)" ( (binary_expression "param_1 + 0x3095" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f630;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aa4;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aac;\n    FUN_00065450();\n  }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f630;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f630" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f630" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8aa4;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8aa4" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8aac;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8aac" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(int *)(param_1 + 0x593c) != 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f621;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8ac3;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8acb;\n    FUN_00065450();\n  }" if (parenthesized_expression "(*(int *)(param_1 + 0x593c) != 0)" ( (binary_expression "*(int *)(param_1 + 0x593c) != 0" (pointer_expression "*(int *)(param_1 + 0x593c)" * (cast_expression "(int *)(param_1 + 0x593c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x593c)" ( (binary_expression "param_1 + 0x593c" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f621;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8ac3;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8acb;\n    FUN_00065450();\n  }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f621;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f621" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f621" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8ac3;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8ac3" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8acb;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8acb" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(char *)(param_1 + 0x56b9) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f614;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a28;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8a2b to 000e8ae9 has its CatchHandler @ 000e8b37 */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a30;\n    FUN_00065450();\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0x56b9) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x56b9) != '\0'" (pointer_expression "*(char *)(param_1 + 0x56b9)" * (cast_expression "(char *)(param_1 + 0x56b9)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x56b9)" ( (binary_expression "param_1 + 0x56b9" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f614;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a28;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8a2b to 000e8ae9 has its CatchHandler @ 000e8b37 */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a30;\n    FUN_00065450();\n  }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f614;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f614" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f614" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8a28;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8a28" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) comment comment (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8a30;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8a30" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(char *)(param_1 + 0x2931) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f607;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a47;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a4f;\n    FUN_00065450();\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0x2931) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x2931) != '\0'" (pointer_expression "*(char *)(param_1 + 0x2931)" * (cast_expression "(char *)(param_1 + 0x2931)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2931)" ( (binary_expression "param_1 + 0x2931" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f607;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a47;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* WARNING: Subroutine does not return */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a4f;\n    FUN_00065450();\n  }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f607;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f607" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f607" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8a47;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8a47" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8a4f;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8a4f" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(char *)(param_1 + 0x18b1) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5fb;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe871f;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8727;\n    FUN_000654e0();\n    *(undefined1 *)(param_1 + 0x18b1) = 0;\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0x18b1) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x18b1) != '\0'" (pointer_expression "*(char *)(param_1 + 0x18b1)" * (cast_expression "(char *)(param_1 + 0x18b1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x18b1)" ( (binary_expression "param_1 + 0x18b1" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5fb;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe871f;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8727;\n    FUN_000654e0();\n    *(undefined1 *)(param_1 + 0x18b1) = 0;\n  }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5fb;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5fb" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f5fb" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe871f;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe871f" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8727;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8727" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000654e0();" (call_expression "FUN_000654e0()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(undefined1 *)(param_1 + 0x18b1) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x18b1) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x18b1)" * (cast_expression "(undefined1 *)(param_1 + 0x18b1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x18b1)" ( (binary_expression "param_1 + 0x18b1" identifier + number_literal) )))) = number_literal) ;) })) (expression_statement "bVar22 = *(int *)(param_1 + 0x5934) == 0;" (assignment_expression "bVar22 = *(int *)(param_1 + 0x5934) == 0" identifier = (binary_expression "*(int *)(param_1 + 0x5934) == 0" (pointer_expression "*(int *)(param_1 + 0x5934)" * (cast_expression "(int *)(param_1 + 0x5934)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5934)" ( (binary_expression "param_1 + 0x5934" identifier + number_literal) )))) == number_literal)) ;) (expression_statement "bVar24 = !bVar22;" (assignment_expression "bVar24 = !bVar22" identifier = (unary_expression "!bVar22" ! identifier)) ;) (if_statement "if (bVar24) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5ef;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86e7;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86ef;\n    FUN_000654e0();\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }" if (parenthesized_expression "(bVar24)" ( identifier )) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5ef;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86e7;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86ef;\n    FUN_000654e0();\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5ef;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5ef" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f5ef" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe86e7;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe86e7" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe86ef;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe86ef" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000654e0();" (call_expression "FUN_000654e0()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x5934) = 0;" (assignment_expression "*(undefined4 *)(param_1 + 0x5934) = 0" (pointer_expression "*(undefined4 *)(param_1 + 0x5934)" * (cast_expression "(undefined4 *)(param_1 + 0x5934)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5934)" ( (binary_expression "param_1 + 0x5934" identifier + number_literal) )))) = number_literal) ;) })) (expression_statement "bVar24 = bVar24 && (undefined1 *)0xffffffef < puVar18 + -0x10;" (assignment_expression "bVar24 = bVar24 && (undefined1 *)0xffffffef < puVar18 + -0x10" identifier = (binary_expression "bVar24 && (undefined1 *)0xffffffef < puVar18 + -0x10" identifier && (binary_expression "(undefined1 *)0xffffffef < puVar18 + -0x10" (cast_expression "(undefined1 *)0xffffffef" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) < (binary_expression "puVar18 + -0x10" identifier + number_literal)))) ;) (expression_statement "bVar22 = bVar22 || puVar18 == (undefined1 *)0x0;" (assignment_expression "bVar22 = bVar22 || puVar18 == (undefined1 *)0x0" identifier = (binary_expression "bVar22 || puVar18 == (undefined1 *)0x0" identifier || (binary_expression "puVar18 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)))) ;) (expression_statement "iVar14 = 5;" (assignment_expression "iVar14 = 5" identifier = number_literal) ;) (expression_statement "pbVar19 = *(byte **)(param_1 + 0x99c);" (assignment_expression "pbVar19 = *(byte **)(param_1 + 0x99c)" identifier = (pointer_expression "*(byte **)(param_1 + 0x99c)" * (cast_expression "(byte **)(param_1 + 0x99c)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x99c)" ( (binary_expression "param_1 + 0x99c" identifier + number_literal) ))))) ;) (expression_statement "pbVar20 = local_1f0;" (assignment_expression "pbVar20 = local_1f0" identifier = identifier) ;) (do_statement "do {\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    bVar24 = *pbVar19 < *pbVar20;\n    bVar22 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n    pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n  } while (bVar22);" do (compound_statement "{\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    bVar24 = *pbVar19 < *pbVar20;\n    bVar22 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n    pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n  }" { (if_statement "if (iVar14 == 0) break;" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" identifier = (binary_expression "iVar14 + -1" identifier + number_literal)) ;) (expression_statement "bVar24 = *pbVar19 < *pbVar20;" (assignment_expression "bVar24 = *pbVar19 < *pbVar20" identifier = (binary_expression "*pbVar19 < *pbVar20" (pointer_expression "*pbVar19" * identifier) < (pointer_expression "*pbVar20" * identifier))) ;) (expression_statement "bVar22 = *pbVar19 == *pbVar20;" (assignment_expression "bVar22 = *pbVar19 == *pbVar20" identifier = (binary_expression "*pbVar19 == *pbVar20" (pointer_expression "*pbVar19" * identifier) == (pointer_expression "*pbVar20" * identifier))) ;) (expression_statement "pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1" identifier = (binary_expression "pbVar19 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar19 + (uint)bVar25 * -2" identifier + (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1" identifier = (binary_expression "pbVar20 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar25 * -2" identifier + (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar22)" ( identifier )) ;) (if_statement "if ((!bVar24 && !bVar22) != bVar24) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5e5;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86af;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* try { // try from 000e86b2 to 000e8726 has its CatchHandler @ 000e8b37 */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86b7;\n    FUN_000654e0();\n    *(byte **)(param_1 + 0x99c) = local_1f0;\n  }" if (parenthesized_expression "((!bVar24 && !bVar22) != bVar24)" ( (binary_expression "(!bVar24 && !bVar22) != bVar24" (parenthesized_expression "(!bVar24 && !bVar22)" ( (binary_expression "!bVar24 && !bVar22" (unary_expression "!bVar24" ! identifier) && (unary_expression "!bVar22" ! identifier)) )) != identifier) )) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5e5;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86af;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    /* try { // try from 000e86b2 to 000e8726 has its CatchHandler @ 000e8b37 */\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86b7;\n    FUN_000654e0();\n    *(byte **)(param_1 + 0x99c) = local_1f0;\n  }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5e5;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5e5" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f5e5" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe86af;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe86af" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) comment (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe86b7;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe86b7" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000654e0();" (call_expression "FUN_000654e0()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(byte **)(param_1 + 0x99c) = local_1f0;" (assignment_expression "*(byte **)(param_1 + 0x99c) = local_1f0" (pointer_expression "*(byte **)(param_1 + 0x99c)" * (cast_expression "(byte **)(param_1 + 0x99c)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x99c)" ( (binary_expression "param_1 + 0x99c" identifier + number_literal) )))) = identifier) ;) })) (labeled_statement "LAB_000e7d53:\n  if (*(char *)(param_1 + 0x3344) != '\0') {\n    *(undefined1 *)(param_1 + 0x32c9) = 1;\n  }" statement_identifier : (if_statement "if (*(char *)(param_1 + 0x3344) != '\0') {\n    *(undefined1 *)(param_1 + 0x32c9) = 1;\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0x3344) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x3344) != '\0'" (pointer_expression "*(char *)(param_1 + 0x3344)" * (cast_expression "(char *)(param_1 + 0x3344)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3344)" ( (binary_expression "param_1 + 0x3344" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    *(undefined1 *)(param_1 + 0x32c9) = 1;\n  }" { (expression_statement "*(undefined1 *)(param_1 + 0x32c9) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x32c9) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x32c9)" * (cast_expression "(undefined1 *)(param_1 + 0x32c9)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x32c9)" ( (binary_expression "param_1 + 0x32c9" identifier + number_literal) )))) = number_literal) ;) }))) (if_statement "if (local_1bc != local_1ec) {\n    *(undefined1 **)(puVar18 + -0x10) = local_1bc;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe7d83;\n    FUN_001e6db0();\n  }" if (parenthesized_expression "(local_1bc != local_1ec)" ( (binary_expression "local_1bc != local_1ec" identifier != identifier) )) (compound_statement "{\n    *(undefined1 **)(puVar18 + -0x10) = local_1bc;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe7d83;\n    FUN_001e6db0();\n  }" { (expression_statement "*(undefined1 **)(puVar18 + -0x10) = local_1bc;" (assignment_expression "*(undefined1 **)(puVar18 + -0x10) = local_1bc" (pointer_expression "*(undefined1 **)(puVar18 + -0x10)" * (cast_expression "(undefined1 **)(puVar18 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe7d83;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe7d83" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001e6db0();" (call_expression "FUN_001e6db0()" identifier (argument_list "()" ( ))) ;) })) (return_statement "return;" return ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.ax replaced with injection: get_pc_thunk_ax */\n/* WARNING: Enum "DT": Some values do not have unique names */\n/* DWARF original prototype: void finalize(General_options * this) */\n\nvoid __thiscall gold::General_options::finalize(General_options *this)\n\n{\n  anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n  *paVar1;\n  anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n  *paVar2;\n  pointer *ppSVar3;\n  double dVar4;\n  anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n  *paVar5;\n  ctype<char> *pcVar6;\n  iterator iVar7;\n  undefined *puVar8;\n  undefined *puVar9;\n  ctype<char> cVar10;\n  __node_type *__node;\n  __node_base *p_Var11;\n  undefined4 *__n_elt;\n  Object_format OVar12;\n  size_t sVar13;\n  uint uVar14;\n  Dir_list *this_00;\n  demangling_styles style;\n  char *pcVar15;\n  int *piVar16;\n  int iVar17;\n  ios *this_01;\n  size_type sVar18;\n  uint uVar19;\n  byte *pbVar20;\n  byte *pbVar21;\n  byte *pbVar22;\n  bool bVar23;\n  bool bVar24;\n  bool bVar25;\n  byte bVar26;\n  byte *local_1f0;\n  undefined1 local_1c0 [4];\n  string libpath;\n  Search_directory local_1a4;\n  Search_directory local_188;\n  Search_directory local_16c;\n  string line;\n  ifstream in;\n  size_type local_130;\n  anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n  local_12c;\n  undefined2 local_11c;\n  locale local_110 [28];\n  __basic_file<char> local_f4 [60];\n  undefined4 auStack_b8 [5];\n  undefined **local_a4 [5];\n  byte local_90;\n  undefined4 local_34;\n  undefined2 local_30;\n  undefined4 local_2c;\n  undefined4 local_28;\n  undefined4 local_24;\n  undefined4 local_20;\n  \n  bVar26 = 0;\n  bVar25 = (this->strip_all_).value;\n  if (bVar25 == false) {\n    if ((this->strip_debug_).value != false) goto LAB_000e79ea;\n    if ((this->strip_debug_non_line_).value != false) {\n      bVar23 = false;\n      goto LAB_000e79f9;\n    }\n    bVar23 = false;\n    if ((this->Bshareable_).value != false) goto LAB_000e7a0c;\n  }\n  else {\n    (this->strip_debug_).value = true;\nLAB_000e79ea:\n    bVar23 = true;\n    (this->strip_debug_non_line_).value = true;\nLAB_000e79f9:\n    (this->strip_debug_gdb_).value = true;\n    if ((this->Bshareable_).value != false) {\nLAB_000e7a0c:\n      (this->shared_).value = true;\n    }\n    if (((bVar25 != false) && ((this->relocatable_).value != false)) &&\n       ((this->strip_all_).value = false, !bVar23)) {\n                    /* WARNING: Subroutine does not return */\n      do_gold_unreachable("../../gold/options.cc",0x453,"finalize");\n    }\n  }\n  if ((this->dc_).value != false) {\n    (this->define_common_).value = true;\n  }\n  if ((this->dp_).value != false) {\n    (this->define_common_).value = true;\n  }\n  if ((this->define_common_).user_set_via_option == false) {\n    (this->define_common_).value = (bool)((this->relocatable_).value ^ 1);\n  }\n  bVar25 = (this->execstack_).value == false;\n  if (bVar25) {\n    bVar25 = (this->noexecstack_).value == false;\n    if (!bVar25) {\n      this->execstack_status_ = EXECSTACK_NO;\n    }\n  }\n  else {\n    this->execstack_status_ = EXECSTACK_YES;\n  }\n  bVar23 = false;\n  iVar17 = 5;\n  pbVar20 = (byte *)(this->icf_).value;\n  pbVar21 = pbVar20;\n  pbVar22 = (byte *)0x28e9b2;\n  do {\n    if (iVar17 == 0) break;\n    iVar17 = iVar17 + -1;\n    bVar23 = *pbVar21 < *pbVar22;\n    bVar25 = *pbVar21 == *pbVar22;\n    pbVar21 = pbVar21 + 1;\n    pbVar22 = pbVar22 + 1;\n  } while (bVar25);\n  bVar24 = false;\n  bVar25 = (!bVar23 && !bVar25) == bVar23;\n  if (bVar25) {\n    this->icf_status_ = ICF_NONE;\n  }\n  else {\n    iVar17 = 5;\n    pbVar21 = (byte *)0x28e304;\n    do {\n      if (iVar17 == 0) break;\n      iVar17 = iVar17 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar25 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + 1;\n      pbVar21 = pbVar21 + 1;\n    } while (bVar25);\n    this->icf_status_ = ((!bVar24 && !bVar25) == bVar24) + ICF_ALL;\n  }\n  if ((this->demangle_).user_set_via_option == false) {\n    if ((this->no_demangle_).user_set_via_option == false) {\n      pcVar15 = getenv("COLLECT_NO_DEMANGLE");\n      this->do_demangle_ = pcVar15 == (char *)0x0;\n    }\n    else {\n      this->do_demangle_ = false;\n    }\n  }\n  else {\n    pcVar15 = (this->demangle_).value;\n    this->do_demangle_ = true;\n    if (*pcVar15 != '\0') {\n      style = cplus_demangle_name_to_style(pcVar15);\n      if (style == unknown_demangling) {\n                    /* WARNING: Subroutine does not return */\n        gold_fatal("unknown demangling style \'%s\'");\n      }\n      cplus_demangle_set_style(style);\n    }\n  }\n  local_1f0 = (byte *)0x28e9b2;\n  bVar25 = false;\n  bVar23 = (this->orphan_handling_).user_set_via_option == false;\n  if (!bVar23) {\n    pbVar20 = (byte *)(this->orphan_handling_).value;\n    iVar17 = 6;\n    pbVar21 = pbVar20;\n    pbVar22 = (byte *)0x2a3d62;\n    do {\n      if (iVar17 == 0) break;\n      iVar17 = iVar17 + -1;\n      bVar25 = *pbVar21 < *pbVar22;\n      bVar23 = *pbVar21 == *pbVar22;\n      pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n      pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n    } while (bVar23);\n    bVar24 = false;\n    bVar25 = (!bVar25 && !bVar23) == bVar25;\n    if (bVar25) {\n      this->orphan_handling_enum_ = ORPHAN_PLACE;\n    }\n    else {\n      iVar17 = 8;\n      pbVar21 = pbVar20;\n      pbVar22 = (byte *)"discard";\n      do {\n        if (iVar17 == 0) break;\n        iVar17 = iVar17 + -1;\n        bVar24 = *pbVar21 < *pbVar22;\n        bVar25 = *pbVar21 == *pbVar22;\n        pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n        pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n      } while (bVar25);\n      bVar23 = false;\n      bVar25 = (!bVar24 && !bVar25) == bVar24;\n      if (bVar25) {\n        this->orphan_handling_enum_ = ORPHAN_DISCARD;\n      }\n      else {\n        iVar17 = 5;\n        pbVar21 = pbVar20;\n        pbVar22 = &DAT_00280715;\n        do {\n          if (iVar17 == 0) break;\n          iVar17 = iVar17 + -1;\n          bVar23 = *pbVar21 < *pbVar22;\n          bVar25 = *pbVar21 == *pbVar22;\n          pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n        } while (bVar25);\n        bVar24 = false;\n        bVar25 = (!bVar23 && !bVar25) == bVar23;\n        if (bVar25) {\n          this->orphan_handling_enum_ = ORPHAN_WARN;\n        }\n        else {\n          iVar17 = 6;\n          pbVar21 = (byte *)0x2a4fde;\n          do {\n            if (iVar17 == 0) break;\n            iVar17 = iVar17 + -1;\n            bVar24 = *pbVar20 < *pbVar21;\n            bVar25 = *pbVar20 == *pbVar21;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          } while (bVar25);\n          if ((!bVar24 && !bVar25) == bVar24) {\n            this->orphan_handling_enum_ = ORPHAN_ERROR;\n          }\n        }\n      }\n    }\n  }\n  if (((this->print_map_).value != false) && ((this->Map_).user_set_via_option == false)) {\n    (this->Map_).user_set_via_option = true;\n    (this->Map_).value = "-";\n  }\n  if (((this->nmagic_).value != false) || ((this->omagic_).value != false)) {\n    this->static_ = true;\n  }\n  iVar17 = (this->thread_count_).value;\n  if (0 < iVar17) {\n    if ((this->thread_count_initial_).value == 0) {\n      (this->thread_count_initial_).value = iVar17;\n    }\n    if ((this->thread_count_middle_).value == 0) {\n      (this->thread_count_middle_).value = iVar17;\n    }\n    if ((this->thread_count_final_).value == 0) {\n      (this->thread_count_final_).value = iVar17;\n    }\n  }\n  libpath.field_2._M_local_buf[0] = '\0';\n  paVar1 = &libpath.field_2;\n  libpath._M_string_length = 0;\n  libpath._M_dataplus._M_p = (pointer)paVar1;\n  if ((this->Y_).user_set_via_option == false) {\n    if ((this->nostdlib_).value == false) {\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e81b5 to 000e81b9 has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      paVar5 = &local_1a4.name_.field_2;\n      local_1a4.name_._M_dataplus._M_p = (pointer)paVar5;\n                    /* try { // try from 000e81e2 to 000e81e6 has its CatchHandler @ 000e8ba5 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      local_1a4.put_in_sysroot_ = true;\n      local_1a4.is_in_sysroot_ = false;\n      if (local_1a4.name_._M_string_length == 0) {\n                    /* try { // try from 000e8607 to 000e860b has its CatchHandler @ 000e8b3e */\n        std::string::_M_replace((string *)&local_1a4,0,0,".",1);\n      }\n      this_00 = &(this->library_path_).value;\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e8623 to 000e8627 has its CatchHandler @ 000e8b45 */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_1a4);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e823f to 000e8243 has its CatchHandler @ 000e8b45 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_1a4.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_1a4.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_1a4.name_._M_dataplus._M_p != paVar5) {\n        operator_delete(local_1a4.name_._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e82c9 to 000e82cd has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      paVar5 = &local_188.name_.field_2;\n      local_188.name_._M_dataplus._M_p = (pointer)paVar5;\n                    /* try { // try from 000e82f6 to 000e82fa has its CatchHandler @ 000e8b7d */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      local_188.put_in_sysroot_ = true;\n      local_188.is_in_sysroot_ = false;\n      if (local_188.name_._M_string_length == 0) {\n                    /* try { // try from 000e87a7 to 000e87ab has its CatchHandler @ 000e8b68 */\n        std::string::_M_replace((string *)&local_188,0,0,".",1);\n      }\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e883b to 000e883f has its CatchHandler @ 000e8b6f */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_188);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e8345 to 000e8349 has its CatchHandler @ 000e8b6f */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_188.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_188.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_188.name_._M_dataplus._M_p != paVar5) {\n        operator_delete(local_188.name_._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e83cf to 000e83d3 has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      paVar5 = &local_16c.name_.field_2;\n      local_16c.name_._M_dataplus._M_p = (pointer)paVar5;\n                    /* try { // try from 000e83fc to 000e8400 has its CatchHandler @ 000e8b76 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      local_16c.put_in_sysroot_ = true;\n      local_16c.is_in_sysroot_ = false;\n      if (local_16c.name_._M_string_length == 0) {\n                    /* try { // try from 000e87cf to 000e87d3 has its CatchHandler @ 000e8b61 */\n        std::string::_M_replace((string *)&local_16c,0,0,".",1);\n      }\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e881b to 000e881f has its CatchHandler @ 000e8b4c */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_16c);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e844b to 000e844f has its CatchHandler @ 000e8b4c */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_16c.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_16c.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_16c.name_._M_dataplus._M_p != paVar5) {\n        operator_delete(local_16c.name_._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e84d5 to 000e84d9 has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      line._M_dataplus._M_p = (pointer)&line.field_2;\n                    /* try { // try from 000e850e to 000e8512 has its CatchHandler @ 000e8b1b */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      if (line._M_string_length == 0) {\n                    /* try { // try from 000e87fc to 000e8800 has its CatchHandler @ 000e8b5a */\n        std::string::_M_replace((string *)&line,0,0,".",1);\n      }\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e8860 to 000e8864 has its CatchHandler @ 000e8b14 */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,(Search_directory *)&line);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e855d to 000e8561 has its CatchHandler @ 000e8b14 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = true;\n        (iVar7._M_current)->is_in_sysroot_ = false;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)line._M_dataplus._M_p != &line.field_2) {\n        operator_delete(line._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      goto LAB_000e7f08;\n    }\n  }\n  else {\n    pcVar15 = (this->Y_).value;\n    sVar13 = strlen(pcVar15);\n                    /* try { // try from 000e7ede to 000e7f8e has its CatchHandler @ 000e8b37 */\n    std::string::_M_replace((string *)&libpath,0,0,pcVar15,sVar13);\n    iVar17 = std::string::compare((string *)&libpath,0,2,"P,");\n    if (iVar17 == 0) {\n      sVar18 = libpath._M_string_length;\n      if (2 < libpath._M_string_length) {\n        sVar18 = 2;\n      }\n                    /* try { // try from 000e877d to 000e8781 has its CatchHandler @ 000e8b37 */\n      std::string::_M_erase((string *)&libpath,0,sVar18);\n    }\nLAB_000e7f08:\n    uVar19 = 0;\n    if (libpath._M_string_length != 0) {\n      do {\n        uVar14 = std::string::find((string *)&libpath,':',uVar19);\n        if ((uVar14 == 0xffffffff) || (uVar14 != uVar19)) {\n          if (libpath._M_string_length < uVar19) {\n                    /* WARNING: Subroutine does not return */\n            std::__throw_out_of_range_fmt("%s: __pos (which is %zu) > this->size() (which is %zu)");\n          }\n          line._M_dataplus._M_p = (pointer)&line.field_2;\n          std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n          _M_construct<char_const*>();\n          _in = (undefined **)&local_12c;\n                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */\n          std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n          _M_construct<char*>();\n          local_11c._0_1_ = true;\n          local_11c._1_1_ = false;\n          if (local_130 == 0) {\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            std::string::_M_replace((string *)&in,0,0,".",1);\n          }\n          iVar7._M_current =\n               (this->library_path_).value.\n               super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n               _M_impl._M_finish;\n          if (iVar7._M_current ==\n              (this->library_path_).value.\n              super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n              _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n            _M_realloc_insert<const_gold::Search_directory&>\n                      (&(this->library_path_).value,iVar7,(Search_directory *)&in);\n          }\n          else {\n            ((iVar7._M_current)->name_)._M_dataplus._M_p =\n                 (pointer)&((iVar7._M_current)->name_).field_2;\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n            _M_construct<char*>();\n            (iVar7._M_current)->put_in_sysroot_ = local_11c._0_1_;\n            (iVar7._M_current)->is_in_sysroot_ = local_11c._1_1_;\n            ppSVar3 = &(this->library_path_).value.\n                       super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                       ._M_impl._M_finish;\n            *ppSVar3 = *ppSVar3 + 1;\n          }\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)_in != &local_12c) {\n            operator_delete(_in);\n          }\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)line._M_dataplus._M_p != &line.field_2) {\n            operator_delete(line._M_dataplus._M_p);\n          }\n          if (uVar14 == 0xffffffff) break;\n        }\n        uVar19 = uVar14 + 1;\n      } while( true );\n    }\n  }\n  if ((this->retain_symbols_file_).value != (char *)0x0) {\n    std::ios_base::ios_base((ios_base *)local_a4);\n    puVar9 = PTR_DAT_0038c8a0;\n    puVar8 = PTR_DAT_0038c89c;\n    local_34 = 0;\n    local_2c = 0;\n    local_a4[0] = &PTR__ios_0038c7b8;\n    local_30 = 0;\n    local_28 = 0;\n    paVar5 = (anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n              *)PTR_DAT_0038c89c;\n    local_24 = 0;\n    local_20 = 0;\n    _in = (undefined **)paVar5;\n    *(undefined **)(&in + *(int *)(PTR_DAT_0038c89c + -0xc)) = PTR_DAT_0038c8a0;\n                    /* try { // try from 000e77b7 to 000e77bb has its CatchHandler @ 000e8b92 */\n    std::ios::init((ios *)((istream *)&in + *(int *)(PTR_DAT_0038c89c + -0xc)),(streambuf *)0x0);\n    _in = &PTR__ifstream_0038c8b4;\n    local_a4[0] = &PTR__ifstream_0038c8c8;\n                    /* try { // try from 000e77e9 to 000e77ed has its CatchHandler @ 000e8b84 */\n    std::filebuf::filebuf((filebuf *)local_12c._M_local_buf);\n                    /* try { // try from 000e77f7 to 000e77fb has its CatchHandler @ 000e8b29 */\n    std::ios::init((ios *)local_a4,(streambuf *)local_12c._M_local_buf);\n                    /* try { // try from 000e780b to 000e783a has its CatchHandler @ 000e8b30 */\n    iVar17 = std::filebuf::open((filebuf *)local_12c._M_local_buf,(this->retain_symbols_file_).value\n                                ,_S_in);\n    this_01 = (ios *)((istream *)&in + (int)*(undefined **)((int)_in + -0xc));\n    if (iVar17 == 0) {\n                    /* try { // try from 000e8751 to 000e8755 has its CatchHandler @ 000e8b30 */\n      std::ios::clear(this_01,*(_Ios_Iostate *)\n                               (*(undefined **)((int)_in + -0xc) + (int)&local_12c + 0xc) |\n                              _S_failbit);\n    }\n    else {\n      std::ios::clear(this_01,_S_goodbit);\n    }\n    if ((local_90 & 5) != 0) {\n      piVar16 = __errno_location();\n      strerror(*piVar16);\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8a0c to 000e8a10 has its CatchHandler @ 000e8b30 */\n      gold_fatal(pcVar15);\n    }\n    paVar2 = &line.field_2;\n    line.field_2._M_local_buf[0] = '\0';\n    line._M_string_length = 0;\n    pcVar6 = *(ctype<char> **)((int)auStack_b8 + (int)*(undefined **)((int)_in + -0xc));\n    line._M_dataplus._M_p = (pointer)paVar2;\n    if (pcVar6 == (ctype<char> *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8af0 to 000e8af4 has its CatchHandler @ 000e8b8b */\n      std::__throw_bad_cast();\n    }\n    if (pcVar6[0x1c] == (ctype<char>)0x0) {\n                    /* try { // try from 000e80ec to 000e8113 has its CatchHandler @ 000e8b8b */\n      std::ctype<char>::_M_widen_init(pcVar6);\n      cVar10 = (ctype<char>)0xa;\n      if (*(code **)(*(int *)pcVar6 + 0x18) != std::ctype<char>::do_widen) {\n        cVar10 = (ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))();\n      }\n    }\n    else {\n      cVar10 = pcVar6[0x27];\n    }\n                    /* try { // try from 000e78b1 to 000e78f6 has its CatchHandler @ 000e8b8b */\n    std::getline<char,std::char_traits<char>,std::allocator<char>>\n              ((istream *)&in,(string *)&line,(char)cVar10);\n    while ((local_90 & 5) == 0) {\n      if ((line._M_string_length != 0) && (line._M_dataplus._M_p[line._M_string_length - 1] == '\r')\n         ) {\n                    /* try { // try from 000e7e32 to 000e7e36 has its CatchHandler @ 000e8b8b */\n        std::string::resize((string *)&line,line._M_string_length - 1,'\0');\n      }\n      __node = (__node_type *)\n               std::_Hash_bytes(line._M_dataplus._M_p,line._M_string_length,0xc70f6907);\n      uVar19 = (uint)__node % (this->symbols_to_retain_)._M_h._M_bucket_count;\n      p_Var11 = std::\n                _Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                ::_M_find_before_node\n                          (&(this->symbols_to_retain_)._M_h,uVar19,&line,(__hash_code)__node);\n      if ((p_Var11 == (__node_base *)0x0) || (p_Var11->_M_nxt == (_Hash_node_base *)0x0)) {\n                    /* try { // try from 000e7a7b to 000e7a7f has its CatchHandler @ 000e8b8b */\n        __n_elt = (undefined4 *)operator_new(0x20);\n        *__n_elt = 0;\n        __n_elt[1] = __n_elt + 3;\n                    /* try { // try from 000e7aa7 to 000e7aab has its CatchHandler @ 000e8b99 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n                    /* try { // try from 000e7ac4 to 000e7ac8 has its CatchHandler @ 000e8b8b */\n        std::\n        _Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n        ::_M_insert_unique_node\n                  ((_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                    *)local_1c0,(size_type)&this->symbols_to_retain_,uVar19,__node,\n                   (size_type)__n_elt);\n      }\n      pcVar6 = *(ctype<char> **)((int)auStack_b8 + (int)*(undefined **)((int)_in + -0xc));\n      if (pcVar6 == (ctype<char> *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88aa to 000e88ae has its CatchHandler @ 000e8b8b */\n        std::__throw_bad_cast();\n      }\n      if (pcVar6[0x1c] == (ctype<char>)0x0) {\n                    /* try { // try from 000e79a3 to 000e79ca has its CatchHandler @ 000e8b8b */\n        std::ctype<char>::_M_widen_init(pcVar6);\n        cVar10 = (ctype<char>)0xa;\n        if (*(code **)(*(int *)pcVar6 + 0x18) != std::ctype<char>::do_widen) {\n          cVar10 = (ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))();\n        }\n      }\n      else {\n        cVar10 = pcVar6[0x27];\n      }\n      std::getline<char,std::char_traits<char>,std::allocator<char>>\n                ((istream *)&in,(string *)&line,(char)cVar10);\n    }\n    if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n         *)line._M_dataplus._M_p != paVar2) {\n      operator_delete(line._M_dataplus._M_p);\n    }\n    _in = &PTR__ifstream_0038c8b4;\n    local_a4[0] = &PTR__ifstream_0038c8c8;\n    local_12c._M_allocated_capacity = (size_type)&PTR__filebuf_0038c838;\n    std::filebuf::close((filebuf *)local_12c._M_local_buf);\n    std::__basic_file<char>::~__basic_file(local_f4);\n    local_12c._M_allocated_capacity = (size_type)&PTR__streambuf_0038c0a4;\n    std::locale::~locale(local_110);\n    _in = (undefined **)paVar5;\n    *(undefined **)(&in + *(int *)(puVar8 + -0xc)) = puVar9;\n    local_a4[0] = &PTR__ios_0038c7b8;\n    std::ios_base::~ios_base((ios_base *)local_a4);\n  }\n  if (((this->Bgroup_).value != false) && ((this->unresolved_symbols_).user_set_via_option == false)\n     ) {\n    (this->unresolved_symbols_).value = "report-all";\n  }\n  if (((this->shared_).value != false) &&\n     ((this->allow_shlib_undefined_).user_set_via_option == false)) {\n    (this->allow_shlib_undefined_).value = true;\n  }\n                    /* try { // try from 000e7bea to 000e7e1a has its CatchHandler @ 000e8b37 */\n  add_sysroot(this);\n  if ((this->shared_).value == false) {\n    if ((this->pie_).value != false) {\n      if (this->static_ != false) {\n        pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8b0f to 000e8b13 has its CatchHandler @ 000e8b37 */\n        gold_fatal(pcVar15);\n      }\n      if ((this->relocatable_).value != false) {\n        pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n        gold_fatal(pcVar15);\n      }\n    }\n    if ((this->filter_).value != (char *)0x0) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n    if ((this->auxiliary_).value._M_h._M_element_count != 0) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e89c3 to 000e89c7 has its CatchHandler @ 000e8b37 */\n      gold_fatal(pcVar15);\n    }\n    if (((this->relocatable_).value != false) && ((this->retain_symbols_file_).value != (char *)0x0)\n       ) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n  }\n  else {\n    if (this->static_ != false) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n    if ((this->pie_).value != false) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n    if ((this->relocatable_).value != false) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n  }\n  OVar12 = string_to_object_format((this->oformat_).value);\n  if ((OVar12 != OBJECT_FORMAT_ELF) &&\n     ((((this->shared_).value != false || ((this->pie_).value != false)) ||\n      ((this->relocatable_).value != false)))) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }\n  if (((this->hash_bucket_empty_fraction_).user_set_via_option != false) &&\n     ((dVar4 = (this->hash_bucket_empty_fraction_).value, dVar4 < 0.0 || (1.0 <= dVar4)))) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88d9 to 000e8993 has its CatchHandler @ 000e8b37 */\n    gold_fatal(pcVar15);\n  }\n  if (this->implicit_incremental_ == false) {\n    if (this->incremental_mode_ == INCREMENTAL_OFF) goto LAB_000e7d53;\n  }\n  else if (this->incremental_mode_ == INCREMENTAL_OFF) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }\n  if ((this->relocatable_).value != false) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }\n  if ((this->emit_relocs_).value != false) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }\n  if (this->plugins_ != (Plugin_manager *)0x0) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }\n  if ((this->relro_).value != false) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8a2b to 000e8ae9 has its CatchHandler @ 000e8b37 */\n    gold_fatal(pcVar15);\n  }\n  if ((this->pie_).value != false) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }\n  if ((this->gc_sections_).value != false) {\n    pcVar15 = (char *)gettext();\n    gold_warning(pcVar15);\n    (this->gc_sections_).value = false;\n  }\n  bVar23 = this->icf_status_ == ICF_NONE;\n  bVar25 = !bVar23;\n  if (bVar25) {\n    pcVar15 = (char *)gettext();\n    gold_warning(pcVar15);\n    this->icf_status_ = ICF_NONE;\n  }\n  bVar25 = bVar25 && (undefined1 *)0xffffffef < &stack0xfffffde4;\n  bVar23 = bVar23 || &stack0x00000000 == (undefined1 *)0x20c;\n  iVar17 = 5;\n  pbVar20 = (byte *)(this->compress_debug_sections_).value;\n  do {\n    if (iVar17 == 0) break;\n    iVar17 = iVar17 + -1;\n    bVar25 = *pbVar20 < *local_1f0;\n    bVar23 = *pbVar20 == *local_1f0;\n    pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n    local_1f0 = local_1f0 + (uint)bVar26 * -2 + 1;\n  } while (bVar23);\n  if ((!bVar25 && !bVar23) != bVar25) {\n    pcVar15 = (char *)gettext();\n                    /* try { // try from 000e86b2 to 000e8726 has its CatchHandler @ 000e8b37 */\n    gold_warning(pcVar15);\n    (this->compress_debug_sections_).value = "none";\n  }\nLAB_000e7d53:\n  if ((this->rosegment_gap_).user_set_via_option != false) {\n    (this->rosegment_).value = true;\n  }\n  if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n       *)libpath._M_dataplus._M_p != paVar1) {\n    operator_delete(libpath._M_dataplus._M_p);\n  }\n  return;\n}\n\n" comment comment comment (function_definition "void __thiscall gold::General_options::finalize(General_options *this)\n\n{\n  anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n  *paVar1;\n  anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n  *paVar2;\n  pointer *ppSVar3;\n  double dVar4;\n  anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n  *paVar5;\n  ctype<char> *pcVar6;\n  iterator iVar7;\n  undefined *puVar8;\n  undefined *puVar9;\n  ctype<char> cVar10;\n  __node_type *__node;\n  __node_base *p_Var11;\n  undefined4 *__n_elt;\n  Object_format OVar12;\n  size_t sVar13;\n  uint uVar14;\n  Dir_list *this_00;\n  demangling_styles style;\n  char *pcVar15;\n  int *piVar16;\n  int iVar17;\n  ios *this_01;\n  size_type sVar18;\n  uint uVar19;\n  byte *pbVar20;\n  byte *pbVar21;\n  byte *pbVar22;\n  bool bVar23;\n  bool bVar24;\n  bool bVar25;\n  byte bVar26;\n  byte *local_1f0;\n  undefined1 local_1c0 [4];\n  string libpath;\n  Search_directory local_1a4;\n  Search_directory local_188;\n  Search_directory local_16c;\n  string line;\n  ifstream in;\n  size_type local_130;\n  anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n  local_12c;\n  undefined2 local_11c;\n  locale local_110 [28];\n  __basic_file<char> local_f4 [60];\n  undefined4 auStack_b8 [5];\n  undefined **local_a4 [5];\n  byte local_90;\n  undefined4 local_34;\n  undefined2 local_30;\n  undefined4 local_2c;\n  undefined4 local_28;\n  undefined4 local_24;\n  undefined4 local_20;\n  \n  bVar26 = 0;\n  bVar25 = (this->strip_all_).value;\n  if (bVar25 == false) {\n    if ((this->strip_debug_).value != false) goto LAB_000e79ea;\n    if ((this->strip_debug_non_line_).value != false) {\n      bVar23 = false;\n      goto LAB_000e79f9;\n    }\n    bVar23 = false;\n    if ((this->Bshareable_).value != false) goto LAB_000e7a0c;\n  }\n  else {\n    (this->strip_debug_).value = true;\nLAB_000e79ea:\n    bVar23 = true;\n    (this->strip_debug_non_line_).value = true;\nLAB_000e79f9:\n    (this->strip_debug_gdb_).value = true;\n    if ((this->Bshareable_).value != false) {\nLAB_000e7a0c:\n      (this->shared_).value = true;\n    }\n    if (((bVar25 != false) && ((this->relocatable_).value != false)) &&\n       ((this->strip_all_).value = false, !bVar23)) {\n                    /* WARNING: Subroutine does not return */\n      do_gold_unreachable("../../gold/options.cc",0x453,"finalize");\n    }\n  }\n  if ((this->dc_).value != false) {\n    (this->define_common_).value = true;\n  }\n  if ((this->dp_).value != false) {\n    (this->define_common_).value = true;\n  }\n  if ((this->define_common_).user_set_via_option == false) {\n    (this->define_common_).value = (bool)((this->relocatable_).value ^ 1);\n  }\n  bVar25 = (this->execstack_).value == false;\n  if (bVar25) {\n    bVar25 = (this->noexecstack_).value == false;\n    if (!bVar25) {\n      this->execstack_status_ = EXECSTACK_NO;\n    }\n  }\n  else {\n    this->execstack_status_ = EXECSTACK_YES;\n  }\n  bVar23 = false;\n  iVar17 = 5;\n  pbVar20 = (byte *)(this->icf_).value;\n  pbVar21 = pbVar20;\n  pbVar22 = (byte *)0x28e9b2;\n  do {\n    if (iVar17 == 0) break;\n    iVar17 = iVar17 + -1;\n    bVar23 = *pbVar21 < *pbVar22;\n    bVar25 = *pbVar21 == *pbVar22;\n    pbVar21 = pbVar21 + 1;\n    pbVar22 = pbVar22 + 1;\n  } while (bVar25);\n  bVar24 = false;\n  bVar25 = (!bVar23 && !bVar25) == bVar23;\n  if (bVar25) {\n    this->icf_status_ = ICF_NONE;\n  }\n  else {\n    iVar17 = 5;\n    pbVar21 = (byte *)0x28e304;\n    do {\n      if (iVar17 == 0) break;\n      iVar17 = iVar17 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar25 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + 1;\n      pbVar21 = pbVar21 + 1;\n    } while (bVar25);\n    this->icf_status_ = ((!bVar24 && !bVar25) == bVar24) + ICF_ALL;\n  }\n  if ((this->demangle_).user_set_via_option == false) {\n    if ((this->no_demangle_).user_set_via_option == false) {\n      pcVar15 = getenv("COLLECT_NO_DEMANGLE");\n      this->do_demangle_ = pcVar15 == (char *)0x0;\n    }\n    else {\n      this->do_demangle_ = false;\n    }\n  }\n  else {\n    pcVar15 = (this->demangle_).value;\n    this->do_demangle_ = true;\n    if (*pcVar15 != '\0') {\n      style = cplus_demangle_name_to_style(pcVar15);\n      if (style == unknown_demangling) {\n                    /* WARNING: Subroutine does not return */\n        gold_fatal("unknown demangling style \'%s\'");\n      }\n      cplus_demangle_set_style(style);\n    }\n  }\n  local_1f0 = (byte *)0x28e9b2;\n  bVar25 = false;\n  bVar23 = (this->orphan_handling_).user_set_via_option == false;\n  if (!bVar23) {\n    pbVar20 = (byte *)(this->orphan_handling_).value;\n    iVar17 = 6;\n    pbVar21 = pbVar20;\n    pbVar22 = (byte *)0x2a3d62;\n    do {\n      if (iVar17 == 0) break;\n      iVar17 = iVar17 + -1;\n      bVar25 = *pbVar21 < *pbVar22;\n      bVar23 = *pbVar21 == *pbVar22;\n      pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n      pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n    } while (bVar23);\n    bVar24 = false;\n    bVar25 = (!bVar25 && !bVar23) == bVar25;\n    if (bVar25) {\n      this->orphan_handling_enum_ = ORPHAN_PLACE;\n    }\n    else {\n      iVar17 = 8;\n      pbVar21 = pbVar20;\n      pbVar22 = (byte *)"discard";\n      do {\n        if (iVar17 == 0) break;\n        iVar17 = iVar17 + -1;\n        bVar24 = *pbVar21 < *pbVar22;\n        bVar25 = *pbVar21 == *pbVar22;\n        pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n        pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n      } while (bVar25);\n      bVar23 = false;\n      bVar25 = (!bVar24 && !bVar25) == bVar24;\n      if (bVar25) {\n        this->orphan_handling_enum_ = ORPHAN_DISCARD;\n      }\n      else {\n        iVar17 = 5;\n        pbVar21 = pbVar20;\n        pbVar22 = &DAT_00280715;\n        do {\n          if (iVar17 == 0) break;\n          iVar17 = iVar17 + -1;\n          bVar23 = *pbVar21 < *pbVar22;\n          bVar25 = *pbVar21 == *pbVar22;\n          pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n        } while (bVar25);\n        bVar24 = false;\n        bVar25 = (!bVar23 && !bVar25) == bVar23;\n        if (bVar25) {\n          this->orphan_handling_enum_ = ORPHAN_WARN;\n        }\n        else {\n          iVar17 = 6;\n          pbVar21 = (byte *)0x2a4fde;\n          do {\n            if (iVar17 == 0) break;\n            iVar17 = iVar17 + -1;\n            bVar24 = *pbVar20 < *pbVar21;\n            bVar25 = *pbVar20 == *pbVar21;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          } while (bVar25);\n          if ((!bVar24 && !bVar25) == bVar24) {\n            this->orphan_handling_enum_ = ORPHAN_ERROR;\n          }\n        }\n      }\n    }\n  }\n  if (((this->print_map_).value != false) && ((this->Map_).user_set_via_option == false)) {\n    (this->Map_).user_set_via_option = true;\n    (this->Map_).value = "-";\n  }\n  if (((this->nmagic_).value != false) || ((this->omagic_).value != false)) {\n    this->static_ = true;\n  }\n  iVar17 = (this->thread_count_).value;\n  if (0 < iVar17) {\n    if ((this->thread_count_initial_).value == 0) {\n      (this->thread_count_initial_).value = iVar17;\n    }\n    if ((this->thread_count_middle_).value == 0) {\n      (this->thread_count_middle_).value = iVar17;\n    }\n    if ((this->thread_count_final_).value == 0) {\n      (this->thread_count_final_).value = iVar17;\n    }\n  }\n  libpath.field_2._M_local_buf[0] = '\0';\n  paVar1 = &libpath.field_2;\n  libpath._M_string_length = 0;\n  libpath._M_dataplus._M_p = (pointer)paVar1;\n  if ((this->Y_).user_set_via_option == false) {\n    if ((this->nostdlib_).value == false) {\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e81b5 to 000e81b9 has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      paVar5 = &local_1a4.name_.field_2;\n      local_1a4.name_._M_dataplus._M_p = (pointer)paVar5;\n                    /* try { // try from 000e81e2 to 000e81e6 has its CatchHandler @ 000e8ba5 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      local_1a4.put_in_sysroot_ = true;\n      local_1a4.is_in_sysroot_ = false;\n      if (local_1a4.name_._M_string_length == 0) {\n                    /* try { // try from 000e8607 to 000e860b has its CatchHandler @ 000e8b3e */\n        std::string::_M_replace((string *)&local_1a4,0,0,".",1);\n      }\n      this_00 = &(this->library_path_).value;\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e8623 to 000e8627 has its CatchHandler @ 000e8b45 */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_1a4);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e823f to 000e8243 has its CatchHandler @ 000e8b45 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_1a4.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_1a4.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_1a4.name_._M_dataplus._M_p != paVar5) {\n        operator_delete(local_1a4.name_._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e82c9 to 000e82cd has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      paVar5 = &local_188.name_.field_2;\n      local_188.name_._M_dataplus._M_p = (pointer)paVar5;\n                    /* try { // try from 000e82f6 to 000e82fa has its CatchHandler @ 000e8b7d */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      local_188.put_in_sysroot_ = true;\n      local_188.is_in_sysroot_ = false;\n      if (local_188.name_._M_string_length == 0) {\n                    /* try { // try from 000e87a7 to 000e87ab has its CatchHandler @ 000e8b68 */\n        std::string::_M_replace((string *)&local_188,0,0,".",1);\n      }\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e883b to 000e883f has its CatchHandler @ 000e8b6f */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_188);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e8345 to 000e8349 has its CatchHandler @ 000e8b6f */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_188.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_188.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_188.name_._M_dataplus._M_p != paVar5) {\n        operator_delete(local_188.name_._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e83cf to 000e83d3 has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      paVar5 = &local_16c.name_.field_2;\n      local_16c.name_._M_dataplus._M_p = (pointer)paVar5;\n                    /* try { // try from 000e83fc to 000e8400 has its CatchHandler @ 000e8b76 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      local_16c.put_in_sysroot_ = true;\n      local_16c.is_in_sysroot_ = false;\n      if (local_16c.name_._M_string_length == 0) {\n                    /* try { // try from 000e87cf to 000e87d3 has its CatchHandler @ 000e8b61 */\n        std::string::_M_replace((string *)&local_16c,0,0,".",1);\n      }\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e881b to 000e881f has its CatchHandler @ 000e8b4c */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_16c);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e844b to 000e844f has its CatchHandler @ 000e8b4c */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_16c.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_16c.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_16c.name_._M_dataplus._M_p != paVar5) {\n        operator_delete(local_16c.name_._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e84d5 to 000e84d9 has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      line._M_dataplus._M_p = (pointer)&line.field_2;\n                    /* try { // try from 000e850e to 000e8512 has its CatchHandler @ 000e8b1b */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      if (line._M_string_length == 0) {\n                    /* try { // try from 000e87fc to 000e8800 has its CatchHandler @ 000e8b5a */\n        std::string::_M_replace((string *)&line,0,0,".",1);\n      }\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e8860 to 000e8864 has its CatchHandler @ 000e8b14 */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,(Search_directory *)&line);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e855d to 000e8561 has its CatchHandler @ 000e8b14 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = true;\n        (iVar7._M_current)->is_in_sysroot_ = false;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)line._M_dataplus._M_p != &line.field_2) {\n        operator_delete(line._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      goto LAB_000e7f08;\n    }\n  }\n  else {\n    pcVar15 = (this->Y_).value;\n    sVar13 = strlen(pcVar15);\n                    /* try { // try from 000e7ede to 000e7f8e has its CatchHandler @ 000e8b37 */\n    std::string::_M_replace((string *)&libpath,0,0,pcVar15,sVar13);\n    iVar17 = std::string::compare((string *)&libpath,0,2,"P,");\n    if (iVar17 == 0) {\n      sVar18 = libpath._M_string_length;\n      if (2 < libpath._M_string_length) {\n        sVar18 = 2;\n      }\n                    /* try { // try from 000e877d to 000e8781 has its CatchHandler @ 000e8b37 */\n      std::string::_M_erase((string *)&libpath,0,sVar18);\n    }\nLAB_000e7f08:\n    uVar19 = 0;\n    if (libpath._M_string_length != 0) {\n      do {\n        uVar14 = std::string::find((string *)&libpath,':',uVar19);\n        if ((uVar14 == 0xffffffff) || (uVar14 != uVar19)) {\n          if (libpath._M_string_length < uVar19) {\n                    /* WARNING: Subroutine does not return */\n            std::__throw_out_of_range_fmt("%s: __pos (which is %zu) > this->size() (which is %zu)");\n          }\n          line._M_dataplus._M_p = (pointer)&line.field_2;\n          std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n          _M_construct<char_const*>();\n          _in = (undefined **)&local_12c;\n                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */\n          std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n          _M_construct<char*>();\n          local_11c._0_1_ = true;\n          local_11c._1_1_ = false;\n          if (local_130 == 0) {\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            std::string::_M_replace((string *)&in,0,0,".",1);\n          }\n          iVar7._M_current =\n               (this->library_path_).value.\n               super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n               _M_impl._M_finish;\n          if (iVar7._M_current ==\n              (this->library_path_).value.\n              super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n              _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n            _M_realloc_insert<const_gold::Search_directory&>\n                      (&(this->library_path_).value,iVar7,(Search_directory *)&in);\n          }\n          else {\n            ((iVar7._M_current)->name_)._M_dataplus._M_p =\n                 (pointer)&((iVar7._M_current)->name_).field_2;\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n            _M_construct<char*>();\n            (iVar7._M_current)->put_in_sysroot_ = local_11c._0_1_;\n            (iVar7._M_current)->is_in_sysroot_ = local_11c._1_1_;\n            ppSVar3 = &(this->library_path_).value.\n                       super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                       ._M_impl._M_finish;\n            *ppSVar3 = *ppSVar3 + 1;\n          }\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)_in != &local_12c) {\n            operator_delete(_in);\n          }\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)line._M_dataplus._M_p != &line.field_2) {\n            operator_delete(line._M_dataplus._M_p);\n          }\n          if (uVar14 == 0xffffffff) break;\n        }\n        uVar19 = uVar14 + 1;\n      } while( true );\n    }\n  }\n  if ((this->retain_symbols_file_).value != (char *)0x0) {\n    std::ios_base::ios_base((ios_base *)local_a4);\n    puVar9 = PTR_DAT_0038c8a0;\n    puVar8 = PTR_DAT_0038c89c;\n    local_34 = 0;\n    local_2c = 0;\n    local_a4[0] = &PTR__ios_0038c7b8;\n    local_30 = 0;\n    local_28 = 0;\n    paVar5 = (anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n              *)PTR_DAT_0038c89c;\n    local_24 = 0;\n    local_20 = 0;\n    _in = (undefined **)paVar5;\n    *(undefined **)(&in + *(int *)(PTR_DAT_0038c89c + -0xc)) = PTR_DAT_0038c8a0;\n                    /* try { // try from 000e77b7 to 000e77bb has its CatchHandler @ 000e8b92 */\n    std::ios::init((ios *)((istream *)&in + *(int *)(PTR_DAT_0038c89c + -0xc)),(streambuf *)0x0);\n    _in = &PTR__ifstream_0038c8b4;\n    local_a4[0] = &PTR__ifstream_0038c8c8;\n                    /* try { // try from 000e77e9 to 000e77ed has its CatchHandler @ 000e8b84 */\n    std::filebuf::filebuf((filebuf *)local_12c._M_local_buf);\n                    /* try { // try from 000e77f7 to 000e77fb has its CatchHandler @ 000e8b29 */\n    std::ios::init((ios *)local_a4,(streambuf *)local_12c._M_local_buf);\n                    /* try { // try from 000e780b to 000e783a has its CatchHandler @ 000e8b30 */\n    iVar17 = std::filebuf::open((filebuf *)local_12c._M_local_buf,(this->retain_symbols_file_).value\n                                ,_S_in);\n    this_01 = (ios *)((istream *)&in + (int)*(undefined **)((int)_in + -0xc));\n    if (iVar17 == 0) {\n                    /* try { // try from 000e8751 to 000e8755 has its CatchHandler @ 000e8b30 */\n      std::ios::clear(this_01,*(_Ios_Iostate *)\n                               (*(undefined **)((int)_in + -0xc) + (int)&local_12c + 0xc) |\n                              _S_failbit);\n    }\n    else {\n      std::ios::clear(this_01,_S_goodbit);\n    }\n    if ((local_90 & 5) != 0) {\n      piVar16 = __errno_location();\n      strerror(*piVar16);\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8a0c to 000e8a10 has its CatchHandler @ 000e8b30 */\n      gold_fatal(pcVar15);\n    }\n    paVar2 = &line.field_2;\n    line.field_2._M_local_buf[0] = '\0';\n    line._M_string_length = 0;\n    pcVar6 = *(ctype<char> **)((int)auStack_b8 + (int)*(undefined **)((int)_in + -0xc));\n    line._M_dataplus._M_p = (pointer)paVar2;\n    if (pcVar6 == (ctype<char> *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8af0 to 000e8af4 has its CatchHandler @ 000e8b8b */\n      std::__throw_bad_cast();\n    }\n    if (pcVar6[0x1c] == (ctype<char>)0x0) {\n                    /* try { // try from 000e80ec to 000e8113 has its CatchHandler @ 000e8b8b */\n      std::ctype<char>::_M_widen_init(pcVar6);\n      cVar10 = (ctype<char>)0xa;\n      if (*(code **)(*(int *)pcVar6 + 0x18) != std::ctype<char>::do_widen) {\n        cVar10 = (ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))();\n      }\n    }\n    else {\n      cVar10 = pcVar6[0x27];\n    }\n                    /* try { // try from 000e78b1 to 000e78f6 has its CatchHandler @ 000e8b8b */\n    std::getline<char,std::char_traits<char>,std::allocator<char>>\n              ((istream *)&in,(string *)&line,(char)cVar10);\n    while ((local_90 & 5) == 0) {\n      if ((line._M_string_length != 0) && (line._M_dataplus._M_p[line._M_string_length - 1] == '\r')\n         ) {\n                    /* try { // try from 000e7e32 to 000e7e36 has its CatchHandler @ 000e8b8b */\n        std::string::resize((string *)&line,line._M_string_length - 1,'\0');\n      }\n      __node = (__node_type *)\n               std::_Hash_bytes(line._M_dataplus._M_p,line._M_string_length,0xc70f6907);\n      uVar19 = (uint)__node % (this->symbols_to_retain_)._M_h._M_bucket_count;\n      p_Var11 = std::\n                _Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                ::_M_find_before_node\n                          (&(this->symbols_to_retain_)._M_h,uVar19,&line,(__hash_code)__node);\n      if ((p_Var11 == (__node_base *)0x0) || (p_Var11->_M_nxt == (_Hash_node_base *)0x0)) {\n                    /* try { // try from 000e7a7b to 000e7a7f has its CatchHandler @ 000e8b8b */\n        __n_elt = (undefined4 *)operator_new(0x20);\n        *__n_elt = 0;\n        __n_elt[1] = __n_elt + 3;\n                    /* try { // try from 000e7aa7 to 000e7aab has its CatchHandler @ 000e8b99 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n                    /* try { // try from 000e7ac4 to 000e7ac8 has its CatchHandler @ 000e8b8b */\n        std::\n        _Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n        ::_M_insert_unique_node\n                  ((_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                    *)local_1c0,(size_type)&this->symbols_to_retain_,uVar19,__node,\n                   (size_type)__n_elt);\n      }\n      pcVar6 = *(ctype<char> **)((int)auStack_b8 + (int)*(undefined **)((int)_in + -0xc));\n      if (pcVar6 == (ctype<char> *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88aa to 000e88ae has its CatchHandler @ 000e8b8b */\n        std::__throw_bad_cast();\n      }\n      if (pcVar6[0x1c] == (ctype<char>)0x0) {\n                    /* try { // try from 000e79a3 to 000e79ca has its CatchHandler @ 000e8b8b */\n        std::ctype<char>::_M_widen_init(pcVar6);\n        cVar10 = (ctype<char>)0xa;\n        if (*(code **)(*(int *)pcVar6 + 0x18) != std::ctype<char>::do_widen) {\n          cVar10 = (ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))();\n        }\n      }\n      else {\n        cVar10 = pcVar6[0x27];\n      }\n      std::getline<char,std::char_traits<char>,std::allocator<char>>\n                ((istream *)&in,(string *)&line,(char)cVar10);\n    }\n    if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n         *)line._M_dataplus._M_p != paVar2) {\n      operator_delete(line._M_dataplus._M_p);\n    }\n    _in = &PTR__ifstream_0038c8b4;\n    local_a4[0] = &PTR__ifstream_0038c8c8;\n    local_12c._M_allocated_capacity = (size_type)&PTR__filebuf_0038c838;\n    std::filebuf::close((filebuf *)local_12c._M_local_buf);\n    std::__basic_file<char>::~__basic_file(local_f4);\n    local_12c._M_allocated_capacity = (size_type)&PTR__streambuf_0038c0a4;\n    std::locale::~locale(local_110);\n    _in = (undefined **)paVar5;\n    *(undefined **)(&in + *(int *)(puVar8 + -0xc)) = puVar9;\n    local_a4[0] = &PTR__ios_0038c7b8;\n    std::ios_base::~ios_base((ios_base *)local_a4);\n  }\n  if (((this->Bgroup_).value != false) && ((this->unresolved_symbols_).user_set_via_option == false)\n     ) {\n    (this->unresolved_symbols_).value = "report-all";\n  }\n  if (((this->shared_).value != false) &&\n     ((this->allow_shlib_undefined_).user_set_via_option == false)) {\n    (this->allow_shlib_undefined_).value = true;\n  }\n                    /* try { // try from 000e7bea to 000e7e1a has its CatchHandler @ 000e8b37 */\n  add_sysroot(this);\n  if ((this->shared_).value == false) {\n    if ((this->pie_).value != false) {\n      if (this->static_ != false) {\n        pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8b0f to 000e8b13 has its CatchHandler @ 000e8b37 */\n        gold_fatal(pcVar15);\n      }\n      if ((this->relocatable_).value != false) {\n        pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n        gold_fatal(pcVar15);\n      }\n    }\n    if ((this->filter_).value != (char *)0x0) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n    if ((this->auxiliary_).value._M_h._M_element_count != 0) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e89c3 to 000e89c7 has its CatchHandler @ 000e8b37 */\n      gold_fatal(pcVar15);\n    }\n    if (((this->relocatable_).value != false) && ((this->retain_symbols_file_).value != (char *)0x0)\n       ) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n  }\n  else {\n    if (this->static_ != false) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n    if ((this->pie_).value != false) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n    if ((this->relocatable_).value != false) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n  }\n  OVar12 = string_to_object_format((this->oformat_).value);\n  if ((OVar12 != OBJECT_FORMAT_ELF) &&\n     ((((this->shared_).value != false || ((this->pie_).value != false)) ||\n      ((this->relocatable_).value != false)))) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }\n  if (((this->hash_bucket_empty_fraction_).user_set_via_option != false) &&\n     ((dVar4 = (this->hash_bucket_empty_fraction_).value, dVar4 < 0.0 || (1.0 <= dVar4)))) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88d9 to 000e8993 has its CatchHandler @ 000e8b37 */\n    gold_fatal(pcVar15);\n  }\n  if (this->implicit_incremental_ == false) {\n    if (this->incremental_mode_ == INCREMENTAL_OFF) goto LAB_000e7d53;\n  }\n  else if (this->incremental_mode_ == INCREMENTAL_OFF) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }\n  if ((this->relocatable_).value != false) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }\n  if ((this->emit_relocs_).value != false) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }\n  if (this->plugins_ != (Plugin_manager *)0x0) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }\n  if ((this->relro_).value != false) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8a2b to 000e8ae9 has its CatchHandler @ 000e8b37 */\n    gold_fatal(pcVar15);\n  }\n  if ((this->pie_).value != false) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }\n  if ((this->gc_sections_).value != false) {\n    pcVar15 = (char *)gettext();\n    gold_warning(pcVar15);\n    (this->gc_sections_).value = false;\n  }\n  bVar23 = this->icf_status_ == ICF_NONE;\n  bVar25 = !bVar23;\n  if (bVar25) {\n    pcVar15 = (char *)gettext();\n    gold_warning(pcVar15);\n    this->icf_status_ = ICF_NONE;\n  }\n  bVar25 = bVar25 && (undefined1 *)0xffffffef < &stack0xfffffde4;\n  bVar23 = bVar23 || &stack0x00000000 == (undefined1 *)0x20c;\n  iVar17 = 5;\n  pbVar20 = (byte *)(this->compress_debug_sections_).value;\n  do {\n    if (iVar17 == 0) break;\n    iVar17 = iVar17 + -1;\n    bVar25 = *pbVar20 < *local_1f0;\n    bVar23 = *pbVar20 == *local_1f0;\n    pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n    local_1f0 = local_1f0 + (uint)bVar26 * -2 + 1;\n  } while (bVar23);\n  if ((!bVar25 && !bVar23) != bVar25) {\n    pcVar15 = (char *)gettext();\n                    /* try { // try from 000e86b2 to 000e8726 has its CatchHandler @ 000e8b37 */\n    gold_warning(pcVar15);\n    (this->compress_debug_sections_).value = "none";\n  }\nLAB_000e7d53:\n  if ((this->rosegment_gap_).user_set_via_option != false) {\n    (this->rosegment_).value = true;\n  }\n  if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n       *)libpath._M_dataplus._M_p != paVar1) {\n    operator_delete(libpath._M_dataplus._M_p);\n  }\n  return;\n}" primitive_type (ms_call_modifier "__thiscall" __thiscall) (ERROR "gold::General_options::" identifier : : identifier : :) (function_declarator "finalize(General_options *this)" identifier (parameter_list "(General_options *this)" ( (parameter_declaration "General_options *this" type_identifier (pointer_declarator "*this" * identifier)) ))) (compound_statement "{\n  anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n  *paVar1;\n  anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n  *paVar2;\n  pointer *ppSVar3;\n  double dVar4;\n  anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n  *paVar5;\n  ctype<char> *pcVar6;\n  iterator iVar7;\n  undefined *puVar8;\n  undefined *puVar9;\n  ctype<char> cVar10;\n  __node_type *__node;\n  __node_base *p_Var11;\n  undefined4 *__n_elt;\n  Object_format OVar12;\n  size_t sVar13;\n  uint uVar14;\n  Dir_list *this_00;\n  demangling_styles style;\n  char *pcVar15;\n  int *piVar16;\n  int iVar17;\n  ios *this_01;\n  size_type sVar18;\n  uint uVar19;\n  byte *pbVar20;\n  byte *pbVar21;\n  byte *pbVar22;\n  bool bVar23;\n  bool bVar24;\n  bool bVar25;\n  byte bVar26;\n  byte *local_1f0;\n  undefined1 local_1c0 [4];\n  string libpath;\n  Search_directory local_1a4;\n  Search_directory local_188;\n  Search_directory local_16c;\n  string line;\n  ifstream in;\n  size_type local_130;\n  anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n  local_12c;\n  undefined2 local_11c;\n  locale local_110 [28];\n  __basic_file<char> local_f4 [60];\n  undefined4 auStack_b8 [5];\n  undefined **local_a4 [5];\n  byte local_90;\n  undefined4 local_34;\n  undefined2 local_30;\n  undefined4 local_2c;\n  undefined4 local_28;\n  undefined4 local_24;\n  undefined4 local_20;\n  \n  bVar26 = 0;\n  bVar25 = (this->strip_all_).value;\n  if (bVar25 == false) {\n    if ((this->strip_debug_).value != false) goto LAB_000e79ea;\n    if ((this->strip_debug_non_line_).value != false) {\n      bVar23 = false;\n      goto LAB_000e79f9;\n    }\n    bVar23 = false;\n    if ((this->Bshareable_).value != false) goto LAB_000e7a0c;\n  }\n  else {\n    (this->strip_debug_).value = true;\nLAB_000e79ea:\n    bVar23 = true;\n    (this->strip_debug_non_line_).value = true;\nLAB_000e79f9:\n    (this->strip_debug_gdb_).value = true;\n    if ((this->Bshareable_).value != false) {\nLAB_000e7a0c:\n      (this->shared_).value = true;\n    }\n    if (((bVar25 != false) && ((this->relocatable_).value != false)) &&\n       ((this->strip_all_).value = false, !bVar23)) {\n                    /* WARNING: Subroutine does not return */\n      do_gold_unreachable("../../gold/options.cc",0x453,"finalize");\n    }\n  }\n  if ((this->dc_).value != false) {\n    (this->define_common_).value = true;\n  }\n  if ((this->dp_).value != false) {\n    (this->define_common_).value = true;\n  }\n  if ((this->define_common_).user_set_via_option == false) {\n    (this->define_common_).value = (bool)((this->relocatable_).value ^ 1);\n  }\n  bVar25 = (this->execstack_).value == false;\n  if (bVar25) {\n    bVar25 = (this->noexecstack_).value == false;\n    if (!bVar25) {\n      this->execstack_status_ = EXECSTACK_NO;\n    }\n  }\n  else {\n    this->execstack_status_ = EXECSTACK_YES;\n  }\n  bVar23 = false;\n  iVar17 = 5;\n  pbVar20 = (byte *)(this->icf_).value;\n  pbVar21 = pbVar20;\n  pbVar22 = (byte *)0x28e9b2;\n  do {\n    if (iVar17 == 0) break;\n    iVar17 = iVar17 + -1;\n    bVar23 = *pbVar21 < *pbVar22;\n    bVar25 = *pbVar21 == *pbVar22;\n    pbVar21 = pbVar21 + 1;\n    pbVar22 = pbVar22 + 1;\n  } while (bVar25);\n  bVar24 = false;\n  bVar25 = (!bVar23 && !bVar25) == bVar23;\n  if (bVar25) {\n    this->icf_status_ = ICF_NONE;\n  }\n  else {\n    iVar17 = 5;\n    pbVar21 = (byte *)0x28e304;\n    do {\n      if (iVar17 == 0) break;\n      iVar17 = iVar17 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar25 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + 1;\n      pbVar21 = pbVar21 + 1;\n    } while (bVar25);\n    this->icf_status_ = ((!bVar24 && !bVar25) == bVar24) + ICF_ALL;\n  }\n  if ((this->demangle_).user_set_via_option == false) {\n    if ((this->no_demangle_).user_set_via_option == false) {\n      pcVar15 = getenv("COLLECT_NO_DEMANGLE");\n      this->do_demangle_ = pcVar15 == (char *)0x0;\n    }\n    else {\n      this->do_demangle_ = false;\n    }\n  }\n  else {\n    pcVar15 = (this->demangle_).value;\n    this->do_demangle_ = true;\n    if (*pcVar15 != '\0') {\n      style = cplus_demangle_name_to_style(pcVar15);\n      if (style == unknown_demangling) {\n                    /* WARNING: Subroutine does not return */\n        gold_fatal("unknown demangling style \'%s\'");\n      }\n      cplus_demangle_set_style(style);\n    }\n  }\n  local_1f0 = (byte *)0x28e9b2;\n  bVar25 = false;\n  bVar23 = (this->orphan_handling_).user_set_via_option == false;\n  if (!bVar23) {\n    pbVar20 = (byte *)(this->orphan_handling_).value;\n    iVar17 = 6;\n    pbVar21 = pbVar20;\n    pbVar22 = (byte *)0x2a3d62;\n    do {\n      if (iVar17 == 0) break;\n      iVar17 = iVar17 + -1;\n      bVar25 = *pbVar21 < *pbVar22;\n      bVar23 = *pbVar21 == *pbVar22;\n      pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n      pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n    } while (bVar23);\n    bVar24 = false;\n    bVar25 = (!bVar25 && !bVar23) == bVar25;\n    if (bVar25) {\n      this->orphan_handling_enum_ = ORPHAN_PLACE;\n    }\n    else {\n      iVar17 = 8;\n      pbVar21 = pbVar20;\n      pbVar22 = (byte *)"discard";\n      do {\n        if (iVar17 == 0) break;\n        iVar17 = iVar17 + -1;\n        bVar24 = *pbVar21 < *pbVar22;\n        bVar25 = *pbVar21 == *pbVar22;\n        pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n        pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n      } while (bVar25);\n      bVar23 = false;\n      bVar25 = (!bVar24 && !bVar25) == bVar24;\n      if (bVar25) {\n        this->orphan_handling_enum_ = ORPHAN_DISCARD;\n      }\n      else {\n        iVar17 = 5;\n        pbVar21 = pbVar20;\n        pbVar22 = &DAT_00280715;\n        do {\n          if (iVar17 == 0) break;\n          iVar17 = iVar17 + -1;\n          bVar23 = *pbVar21 < *pbVar22;\n          bVar25 = *pbVar21 == *pbVar22;\n          pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n        } while (bVar25);\n        bVar24 = false;\n        bVar25 = (!bVar23 && !bVar25) == bVar23;\n        if (bVar25) {\n          this->orphan_handling_enum_ = ORPHAN_WARN;\n        }\n        else {\n          iVar17 = 6;\n          pbVar21 = (byte *)0x2a4fde;\n          do {\n            if (iVar17 == 0) break;\n            iVar17 = iVar17 + -1;\n            bVar24 = *pbVar20 < *pbVar21;\n            bVar25 = *pbVar20 == *pbVar21;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          } while (bVar25);\n          if ((!bVar24 && !bVar25) == bVar24) {\n            this->orphan_handling_enum_ = ORPHAN_ERROR;\n          }\n        }\n      }\n    }\n  }\n  if (((this->print_map_).value != false) && ((this->Map_).user_set_via_option == false)) {\n    (this->Map_).user_set_via_option = true;\n    (this->Map_).value = "-";\n  }\n  if (((this->nmagic_).value != false) || ((this->omagic_).value != false)) {\n    this->static_ = true;\n  }\n  iVar17 = (this->thread_count_).value;\n  if (0 < iVar17) {\n    if ((this->thread_count_initial_).value == 0) {\n      (this->thread_count_initial_).value = iVar17;\n    }\n    if ((this->thread_count_middle_).value == 0) {\n      (this->thread_count_middle_).value = iVar17;\n    }\n    if ((this->thread_count_final_).value == 0) {\n      (this->thread_count_final_).value = iVar17;\n    }\n  }\n  libpath.field_2._M_local_buf[0] = '\0';\n  paVar1 = &libpath.field_2;\n  libpath._M_string_length = 0;\n  libpath._M_dataplus._M_p = (pointer)paVar1;\n  if ((this->Y_).user_set_via_option == false) {\n    if ((this->nostdlib_).value == false) {\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e81b5 to 000e81b9 has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      paVar5 = &local_1a4.name_.field_2;\n      local_1a4.name_._M_dataplus._M_p = (pointer)paVar5;\n                    /* try { // try from 000e81e2 to 000e81e6 has its CatchHandler @ 000e8ba5 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      local_1a4.put_in_sysroot_ = true;\n      local_1a4.is_in_sysroot_ = false;\n      if (local_1a4.name_._M_string_length == 0) {\n                    /* try { // try from 000e8607 to 000e860b has its CatchHandler @ 000e8b3e */\n        std::string::_M_replace((string *)&local_1a4,0,0,".",1);\n      }\n      this_00 = &(this->library_path_).value;\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e8623 to 000e8627 has its CatchHandler @ 000e8b45 */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_1a4);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e823f to 000e8243 has its CatchHandler @ 000e8b45 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_1a4.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_1a4.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_1a4.name_._M_dataplus._M_p != paVar5) {\n        operator_delete(local_1a4.name_._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e82c9 to 000e82cd has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      paVar5 = &local_188.name_.field_2;\n      local_188.name_._M_dataplus._M_p = (pointer)paVar5;\n                    /* try { // try from 000e82f6 to 000e82fa has its CatchHandler @ 000e8b7d */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      local_188.put_in_sysroot_ = true;\n      local_188.is_in_sysroot_ = false;\n      if (local_188.name_._M_string_length == 0) {\n                    /* try { // try from 000e87a7 to 000e87ab has its CatchHandler @ 000e8b68 */\n        std::string::_M_replace((string *)&local_188,0,0,".",1);\n      }\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e883b to 000e883f has its CatchHandler @ 000e8b6f */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_188);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e8345 to 000e8349 has its CatchHandler @ 000e8b6f */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_188.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_188.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_188.name_._M_dataplus._M_p != paVar5) {\n        operator_delete(local_188.name_._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e83cf to 000e83d3 has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      paVar5 = &local_16c.name_.field_2;\n      local_16c.name_._M_dataplus._M_p = (pointer)paVar5;\n                    /* try { // try from 000e83fc to 000e8400 has its CatchHandler @ 000e8b76 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      local_16c.put_in_sysroot_ = true;\n      local_16c.is_in_sysroot_ = false;\n      if (local_16c.name_._M_string_length == 0) {\n                    /* try { // try from 000e87cf to 000e87d3 has its CatchHandler @ 000e8b61 */\n        std::string::_M_replace((string *)&local_16c,0,0,".",1);\n      }\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e881b to 000e881f has its CatchHandler @ 000e8b4c */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_16c);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e844b to 000e844f has its CatchHandler @ 000e8b4c */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_16c.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_16c.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_16c.name_._M_dataplus._M_p != paVar5) {\n        operator_delete(local_16c.name_._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e84d5 to 000e84d9 has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      line._M_dataplus._M_p = (pointer)&line.field_2;\n                    /* try { // try from 000e850e to 000e8512 has its CatchHandler @ 000e8b1b */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      if (line._M_string_length == 0) {\n                    /* try { // try from 000e87fc to 000e8800 has its CatchHandler @ 000e8b5a */\n        std::string::_M_replace((string *)&line,0,0,".",1);\n      }\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e8860 to 000e8864 has its CatchHandler @ 000e8b14 */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,(Search_directory *)&line);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e855d to 000e8561 has its CatchHandler @ 000e8b14 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = true;\n        (iVar7._M_current)->is_in_sysroot_ = false;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)line._M_dataplus._M_p != &line.field_2) {\n        operator_delete(line._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      goto LAB_000e7f08;\n    }\n  }\n  else {\n    pcVar15 = (this->Y_).value;\n    sVar13 = strlen(pcVar15);\n                    /* try { // try from 000e7ede to 000e7f8e has its CatchHandler @ 000e8b37 */\n    std::string::_M_replace((string *)&libpath,0,0,pcVar15,sVar13);\n    iVar17 = std::string::compare((string *)&libpath,0,2,"P,");\n    if (iVar17 == 0) {\n      sVar18 = libpath._M_string_length;\n      if (2 < libpath._M_string_length) {\n        sVar18 = 2;\n      }\n                    /* try { // try from 000e877d to 000e8781 has its CatchHandler @ 000e8b37 */\n      std::string::_M_erase((string *)&libpath,0,sVar18);\n    }\nLAB_000e7f08:\n    uVar19 = 0;\n    if (libpath._M_string_length != 0) {\n      do {\n        uVar14 = std::string::find((string *)&libpath,':',uVar19);\n        if ((uVar14 == 0xffffffff) || (uVar14 != uVar19)) {\n          if (libpath._M_string_length < uVar19) {\n                    /* WARNING: Subroutine does not return */\n            std::__throw_out_of_range_fmt("%s: __pos (which is %zu) > this->size() (which is %zu)");\n          }\n          line._M_dataplus._M_p = (pointer)&line.field_2;\n          std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n          _M_construct<char_const*>();\n          _in = (undefined **)&local_12c;\n                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */\n          std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n          _M_construct<char*>();\n          local_11c._0_1_ = true;\n          local_11c._1_1_ = false;\n          if (local_130 == 0) {\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            std::string::_M_replace((string *)&in,0,0,".",1);\n          }\n          iVar7._M_current =\n               (this->library_path_).value.\n               super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n               _M_impl._M_finish;\n          if (iVar7._M_current ==\n              (this->library_path_).value.\n              super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n              _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n            _M_realloc_insert<const_gold::Search_directory&>\n                      (&(this->library_path_).value,iVar7,(Search_directory *)&in);\n          }\n          else {\n            ((iVar7._M_current)->name_)._M_dataplus._M_p =\n                 (pointer)&((iVar7._M_current)->name_).field_2;\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n            _M_construct<char*>();\n            (iVar7._M_current)->put_in_sysroot_ = local_11c._0_1_;\n            (iVar7._M_current)->is_in_sysroot_ = local_11c._1_1_;\n            ppSVar3 = &(this->library_path_).value.\n                       super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                       ._M_impl._M_finish;\n            *ppSVar3 = *ppSVar3 + 1;\n          }\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)_in != &local_12c) {\n            operator_delete(_in);\n          }\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)line._M_dataplus._M_p != &line.field_2) {\n            operator_delete(line._M_dataplus._M_p);\n          }\n          if (uVar14 == 0xffffffff) break;\n        }\n        uVar19 = uVar14 + 1;\n      } while( true );\n    }\n  }\n  if ((this->retain_symbols_file_).value != (char *)0x0) {\n    std::ios_base::ios_base((ios_base *)local_a4);\n    puVar9 = PTR_DAT_0038c8a0;\n    puVar8 = PTR_DAT_0038c89c;\n    local_34 = 0;\n    local_2c = 0;\n    local_a4[0] = &PTR__ios_0038c7b8;\n    local_30 = 0;\n    local_28 = 0;\n    paVar5 = (anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n              *)PTR_DAT_0038c89c;\n    local_24 = 0;\n    local_20 = 0;\n    _in = (undefined **)paVar5;\n    *(undefined **)(&in + *(int *)(PTR_DAT_0038c89c + -0xc)) = PTR_DAT_0038c8a0;\n                    /* try { // try from 000e77b7 to 000e77bb has its CatchHandler @ 000e8b92 */\n    std::ios::init((ios *)((istream *)&in + *(int *)(PTR_DAT_0038c89c + -0xc)),(streambuf *)0x0);\n    _in = &PTR__ifstream_0038c8b4;\n    local_a4[0] = &PTR__ifstream_0038c8c8;\n                    /* try { // try from 000e77e9 to 000e77ed has its CatchHandler @ 000e8b84 */\n    std::filebuf::filebuf((filebuf *)local_12c._M_local_buf);\n                    /* try { // try from 000e77f7 to 000e77fb has its CatchHandler @ 000e8b29 */\n    std::ios::init((ios *)local_a4,(streambuf *)local_12c._M_local_buf);\n                    /* try { // try from 000e780b to 000e783a has its CatchHandler @ 000e8b30 */\n    iVar17 = std::filebuf::open((filebuf *)local_12c._M_local_buf,(this->retain_symbols_file_).value\n                                ,_S_in);\n    this_01 = (ios *)((istream *)&in + (int)*(undefined **)((int)_in + -0xc));\n    if (iVar17 == 0) {\n                    /* try { // try from 000e8751 to 000e8755 has its CatchHandler @ 000e8b30 */\n      std::ios::clear(this_01,*(_Ios_Iostate *)\n                               (*(undefined **)((int)_in + -0xc) + (int)&local_12c + 0xc) |\n                              _S_failbit);\n    }\n    else {\n      std::ios::clear(this_01,_S_goodbit);\n    }\n    if ((local_90 & 5) != 0) {\n      piVar16 = __errno_location();\n      strerror(*piVar16);\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8a0c to 000e8a10 has its CatchHandler @ 000e8b30 */\n      gold_fatal(pcVar15);\n    }\n    paVar2 = &line.field_2;\n    line.field_2._M_local_buf[0] = '\0';\n    line._M_string_length = 0;\n    pcVar6 = *(ctype<char> **)((int)auStack_b8 + (int)*(undefined **)((int)_in + -0xc));\n    line._M_dataplus._M_p = (pointer)paVar2;\n    if (pcVar6 == (ctype<char> *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8af0 to 000e8af4 has its CatchHandler @ 000e8b8b */\n      std::__throw_bad_cast();\n    }\n    if (pcVar6[0x1c] == (ctype<char>)0x0) {\n                    /* try { // try from 000e80ec to 000e8113 has its CatchHandler @ 000e8b8b */\n      std::ctype<char>::_M_widen_init(pcVar6);\n      cVar10 = (ctype<char>)0xa;\n      if (*(code **)(*(int *)pcVar6 + 0x18) != std::ctype<char>::do_widen) {\n        cVar10 = (ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))();\n      }\n    }\n    else {\n      cVar10 = pcVar6[0x27];\n    }\n                    /* try { // try from 000e78b1 to 000e78f6 has its CatchHandler @ 000e8b8b */\n    std::getline<char,std::char_traits<char>,std::allocator<char>>\n              ((istream *)&in,(string *)&line,(char)cVar10);\n    while ((local_90 & 5) == 0) {\n      if ((line._M_string_length != 0) && (line._M_dataplus._M_p[line._M_string_length - 1] == '\r')\n         ) {\n                    /* try { // try from 000e7e32 to 000e7e36 has its CatchHandler @ 000e8b8b */\n        std::string::resize((string *)&line,line._M_string_length - 1,'\0');\n      }\n      __node = (__node_type *)\n               std::_Hash_bytes(line._M_dataplus._M_p,line._M_string_length,0xc70f6907);\n      uVar19 = (uint)__node % (this->symbols_to_retain_)._M_h._M_bucket_count;\n      p_Var11 = std::\n                _Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                ::_M_find_before_node\n                          (&(this->symbols_to_retain_)._M_h,uVar19,&line,(__hash_code)__node);\n      if ((p_Var11 == (__node_base *)0x0) || (p_Var11->_M_nxt == (_Hash_node_base *)0x0)) {\n                    /* try { // try from 000e7a7b to 000e7a7f has its CatchHandler @ 000e8b8b */\n        __n_elt = (undefined4 *)operator_new(0x20);\n        *__n_elt = 0;\n        __n_elt[1] = __n_elt + 3;\n                    /* try { // try from 000e7aa7 to 000e7aab has its CatchHandler @ 000e8b99 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n                    /* try { // try from 000e7ac4 to 000e7ac8 has its CatchHandler @ 000e8b8b */\n        std::\n        _Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n        ::_M_insert_unique_node\n                  ((_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                    *)local_1c0,(size_type)&this->symbols_to_retain_,uVar19,__node,\n                   (size_type)__n_elt);\n      }\n      pcVar6 = *(ctype<char> **)((int)auStack_b8 + (int)*(undefined **)((int)_in + -0xc));\n      if (pcVar6 == (ctype<char> *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88aa to 000e88ae has its CatchHandler @ 000e8b8b */\n        std::__throw_bad_cast();\n      }\n      if (pcVar6[0x1c] == (ctype<char>)0x0) {\n                    /* try { // try from 000e79a3 to 000e79ca has its CatchHandler @ 000e8b8b */\n        std::ctype<char>::_M_widen_init(pcVar6);\n        cVar10 = (ctype<char>)0xa;\n        if (*(code **)(*(int *)pcVar6 + 0x18) != std::ctype<char>::do_widen) {\n          cVar10 = (ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))();\n        }\n      }\n      else {\n        cVar10 = pcVar6[0x27];\n      }\n      std::getline<char,std::char_traits<char>,std::allocator<char>>\n                ((istream *)&in,(string *)&line,(char)cVar10);\n    }\n    if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n         *)line._M_dataplus._M_p != paVar2) {\n      operator_delete(line._M_dataplus._M_p);\n    }\n    _in = &PTR__ifstream_0038c8b4;\n    local_a4[0] = &PTR__ifstream_0038c8c8;\n    local_12c._M_allocated_capacity = (size_type)&PTR__filebuf_0038c838;\n    std::filebuf::close((filebuf *)local_12c._M_local_buf);\n    std::__basic_file<char>::~__basic_file(local_f4);\n    local_12c._M_allocated_capacity = (size_type)&PTR__streambuf_0038c0a4;\n    std::locale::~locale(local_110);\n    _in = (undefined **)paVar5;\n    *(undefined **)(&in + *(int *)(puVar8 + -0xc)) = puVar9;\n    local_a4[0] = &PTR__ios_0038c7b8;\n    std::ios_base::~ios_base((ios_base *)local_a4);\n  }\n  if (((this->Bgroup_).value != false) && ((this->unresolved_symbols_).user_set_via_option == false)\n     ) {\n    (this->unresolved_symbols_).value = "report-all";\n  }\n  if (((this->shared_).value != false) &&\n     ((this->allow_shlib_undefined_).user_set_via_option == false)) {\n    (this->allow_shlib_undefined_).value = true;\n  }\n                    /* try { // try from 000e7bea to 000e7e1a has its CatchHandler @ 000e8b37 */\n  add_sysroot(this);\n  if ((this->shared_).value == false) {\n    if ((this->pie_).value != false) {\n      if (this->static_ != false) {\n        pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8b0f to 000e8b13 has its CatchHandler @ 000e8b37 */\n        gold_fatal(pcVar15);\n      }\n      if ((this->relocatable_).value != false) {\n        pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n        gold_fatal(pcVar15);\n      }\n    }\n    if ((this->filter_).value != (char *)0x0) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n    if ((this->auxiliary_).value._M_h._M_element_count != 0) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e89c3 to 000e89c7 has its CatchHandler @ 000e8b37 */\n      gold_fatal(pcVar15);\n    }\n    if (((this->relocatable_).value != false) && ((this->retain_symbols_file_).value != (char *)0x0)\n       ) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n  }\n  else {\n    if (this->static_ != false) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n    if ((this->pie_).value != false) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n    if ((this->relocatable_).value != false) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n  }\n  OVar12 = string_to_object_format((this->oformat_).value);\n  if ((OVar12 != OBJECT_FORMAT_ELF) &&\n     ((((this->shared_).value != false || ((this->pie_).value != false)) ||\n      ((this->relocatable_).value != false)))) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }\n  if (((this->hash_bucket_empty_fraction_).user_set_via_option != false) &&\n     ((dVar4 = (this->hash_bucket_empty_fraction_).value, dVar4 < 0.0 || (1.0 <= dVar4)))) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88d9 to 000e8993 has its CatchHandler @ 000e8b37 */\n    gold_fatal(pcVar15);\n  }\n  if (this->implicit_incremental_ == false) {\n    if (this->incremental_mode_ == INCREMENTAL_OFF) goto LAB_000e7d53;\n  }\n  else if (this->incremental_mode_ == INCREMENTAL_OFF) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }\n  if ((this->relocatable_).value != false) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }\n  if ((this->emit_relocs_).value != false) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }\n  if (this->plugins_ != (Plugin_manager *)0x0) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }\n  if ((this->relro_).value != false) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8a2b to 000e8ae9 has its CatchHandler @ 000e8b37 */\n    gold_fatal(pcVar15);\n  }\n  if ((this->pie_).value != false) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }\n  if ((this->gc_sections_).value != false) {\n    pcVar15 = (char *)gettext();\n    gold_warning(pcVar15);\n    (this->gc_sections_).value = false;\n  }\n  bVar23 = this->icf_status_ == ICF_NONE;\n  bVar25 = !bVar23;\n  if (bVar25) {\n    pcVar15 = (char *)gettext();\n    gold_warning(pcVar15);\n    this->icf_status_ = ICF_NONE;\n  }\n  bVar25 = bVar25 && (undefined1 *)0xffffffef < &stack0xfffffde4;\n  bVar23 = bVar23 || &stack0x00000000 == (undefined1 *)0x20c;\n  iVar17 = 5;\n  pbVar20 = (byte *)(this->compress_debug_sections_).value;\n  do {\n    if (iVar17 == 0) break;\n    iVar17 = iVar17 + -1;\n    bVar25 = *pbVar20 < *local_1f0;\n    bVar23 = *pbVar20 == *local_1f0;\n    pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n    local_1f0 = local_1f0 + (uint)bVar26 * -2 + 1;\n  } while (bVar23);\n  if ((!bVar25 && !bVar23) != bVar25) {\n    pcVar15 = (char *)gettext();\n                    /* try { // try from 000e86b2 to 000e8726 has its CatchHandler @ 000e8b37 */\n    gold_warning(pcVar15);\n    (this->compress_debug_sections_).value = "none";\n  }\nLAB_000e7d53:\n  if ((this->rosegment_gap_).user_set_via_option != false) {\n    (this->rosegment_).value = true;\n  }\n  if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n       *)libpath._M_dataplus._M_p != paVar1) {\n    operator_delete(libpath._M_dataplus._M_p);\n  }\n  return;\n}" { (ERROR "anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::" (comma_expression "anon_union_16_2_edb7204a_for_basic_string<char,_std" (binary_expression "anon_union_16_2_edb7204a_for_basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : :) (expression_statement "allocator<char>_>_9\n  *paVar1;" (binary_expression "allocator<char>_>_9\n  *paVar1" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (binary_expression "_9\n  *paVar1" identifier * identifier)) ;) (ERROR "anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::" (comma_expression "anon_union_16_2_edb7204a_for_basic_string<char,_std" (binary_expression "anon_union_16_2_edb7204a_for_basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : :) (expression_statement "allocator<char>_>_9\n  *paVar2;" (binary_expression "allocator<char>_>_9\n  *paVar2" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (binary_expression "_9\n  *paVar2" identifier * identifier)) ;) (declaration "pointer *ppSVar3;" type_identifier (pointer_declarator "*ppSVar3" * identifier) ;) (declaration "double dVar4;" primitive_type identifier ;) (ERROR "anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::" (comma_expression "anon_union_16_2_edb7204a_for_basic_string<char,_std" (binary_expression "anon_union_16_2_edb7204a_for_basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : :) (expression_statement "allocator<char>_>_9\n  *paVar5;" (binary_expression "allocator<char>_>_9\n  *paVar5" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (binary_expression "_9\n  *paVar5" identifier * identifier)) ;) (expression_statement "ctype<char> *pcVar6;" (binary_expression "ctype<char> *pcVar6" (binary_expression "ctype<char" identifier < identifier) > (pointer_expression "*pcVar6" * identifier)) ;) (declaration "iterator iVar7;" type_identifier identifier ;) (declaration "undefined *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "undefined *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (expression_statement "ctype<char> cVar10;" (binary_expression "ctype<char> cVar10" (binary_expression "ctype<char" identifier < identifier) > identifier) ;) (declaration "__node_type *__node;" type_identifier (pointer_declarator "*__node" * identifier) ;) (declaration "__node_base *p_Var11;" type_identifier (pointer_declarator "*p_Var11" * identifier) ;) (declaration "undefined4 *__n_elt;" type_identifier (pointer_declarator "*__n_elt" * identifier) ;) (declaration "Object_format OVar12;" type_identifier identifier ;) (declaration "size_t sVar13;" primitive_type identifier ;) (declaration "uint uVar14;" type_identifier identifier ;) (declaration "Dir_list *this_00;" type_identifier (pointer_declarator "*this_00" * identifier) ;) (declaration "demangling_styles style;" type_identifier identifier ;) (declaration "char *pcVar15;" primitive_type (pointer_declarator "*pcVar15" * identifier) ;) (declaration "int *piVar16;" primitive_type (pointer_declarator "*piVar16" * identifier) ;) (declaration "int iVar17;" primitive_type identifier ;) (declaration "ios *this_01;" type_identifier (pointer_declarator "*this_01" * identifier) ;) (declaration "size_type sVar18;" type_identifier identifier ;) (declaration "uint uVar19;" type_identifier identifier ;) (declaration "byte *pbVar20;" type_identifier (pointer_declarator "*pbVar20" * identifier) ;) (declaration "byte *pbVar21;" type_identifier (pointer_declarator "*pbVar21" * identifier) ;) (declaration "byte *pbVar22;" type_identifier (pointer_declarator "*pbVar22" * identifier) ;) (declaration "bool bVar23;" primitive_type identifier ;) (declaration "bool bVar24;" primitive_type identifier ;) (declaration "bool bVar25;" primitive_type identifier ;) (declaration "byte bVar26;" type_identifier identifier ;) (declaration "byte *local_1f0;" type_identifier (pointer_declarator "*local_1f0" * identifier) ;) (declaration "undefined1 local_1c0 [4];" type_identifier (array_declarator "local_1c0 [4]" identifier [ number_literal ]) ;) (declaration "string libpath;" type_identifier identifier ;) (declaration "Search_directory local_1a4;" type_identifier identifier ;) (declaration "Search_directory local_188;" type_identifier identifier ;) (declaration "Search_directory local_16c;" type_identifier identifier ;) (declaration "string line;" type_identifier identifier ;) (declaration "ifstream in;" type_identifier identifier ;) (declaration "size_type local_130;" type_identifier identifier ;) (ERROR "anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::" (comma_expression "anon_union_16_2_edb7204a_for_basic_string<char,_std" (binary_expression "anon_union_16_2_edb7204a_for_basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : :) (expression_statement "allocator<char>_>_9\n  local_12c;" (binary_expression "allocator<char>_>_9\n  local_12c" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "_9" identifier) identifier) ;) (declaration "undefined2 local_11c;" type_identifier identifier ;) (declaration "locale local_110 [28];" type_identifier (array_declarator "local_110 [28]" identifier [ number_literal ]) ;) (expression_statement "__basic_file<char> local_f4 [60];" (binary_expression "__basic_file<char> local_f4 [60]" (binary_expression "__basic_file<char" identifier < identifier) > (subscript_expression "local_f4 [60]" identifier [ number_literal ])) ;) (declaration "undefined4 auStack_b8 [5];" type_identifier (array_declarator "auStack_b8 [5]" identifier [ number_literal ]) ;) (declaration "undefined **local_a4 [5];" type_identifier (pointer_declarator "**local_a4 [5]" * (pointer_declarator "*local_a4 [5]" * (array_declarator "local_a4 [5]" identifier [ number_literal ]))) ;) (declaration "byte local_90;" type_identifier identifier ;) (declaration "undefined4 local_34;" type_identifier identifier ;) (declaration "undefined2 local_30;" type_identifier identifier ;) (declaration "undefined4 local_2c;" type_identifier identifier ;) (declaration "undefined4 local_28;" type_identifier identifier ;) (declaration "undefined4 local_24;" type_identifier identifier ;) (declaration "undefined4 local_20;" type_identifier identifier ;) (expression_statement "bVar26 = 0;" (assignment_expression "bVar26 = 0" identifier = number_literal) ;) (expression_statement "bVar25 = (this->strip_all_).value;" (assignment_expression "bVar25 = (this->strip_all_).value" identifier = (field_expression "(this->strip_all_).value" (parenthesized_expression "(this->strip_all_)" ( (field_expression "this->strip_all_" identifier -> field_identifier) )) . field_identifier)) ;) (if_statement "if (bVar25 == false) {\n    if ((this->strip_debug_).value != false) goto LAB_000e79ea;\n    if ((this->strip_debug_non_line_).value != false) {\n      bVar23 = false;\n      goto LAB_000e79f9;\n    }\n    bVar23 = false;\n    if ((this->Bshareable_).value != false) goto LAB_000e7a0c;\n  }\n  else {\n    (this->strip_debug_).value = true;\nLAB_000e79ea:\n    bVar23 = true;\n    (this->strip_debug_non_line_).value = true;\nLAB_000e79f9:\n    (this->strip_debug_gdb_).value = true;\n    if ((this->Bshareable_).value != false) {\nLAB_000e7a0c:\n      (this->shared_).value = true;\n    }\n    if (((bVar25 != false) && ((this->relocatable_).value != false)) &&\n       ((this->strip_all_).value = false, !bVar23)) {\n                    /* WARNING: Subroutine does not return */\n      do_gold_unreachable("../../gold/options.cc",0x453,"finalize");\n    }\n  }" if (parenthesized_expression "(bVar25 == false)" ( (binary_expression "bVar25 == false" identifier == false) )) (compound_statement "{\n    if ((this->strip_debug_).value != false) goto LAB_000e79ea;\n    if ((this->strip_debug_non_line_).value != false) {\n      bVar23 = false;\n      goto LAB_000e79f9;\n    }\n    bVar23 = false;\n    if ((this->Bshareable_).value != false) goto LAB_000e7a0c;\n  }" { (if_statement "if ((this->strip_debug_).value != false) goto LAB_000e79ea;" if (parenthesized_expression "((this->strip_debug_).value != false)" ( (binary_expression "(this->strip_debug_).value != false" (field_expression "(this->strip_debug_).value" (parenthesized_expression "(this->strip_debug_)" ( (field_expression "this->strip_debug_" identifier -> field_identifier) )) . field_identifier) != false) )) (goto_statement "goto LAB_000e79ea;" goto statement_identifier ;)) (if_statement "if ((this->strip_debug_non_line_).value != false) {\n      bVar23 = false;\n      goto LAB_000e79f9;\n    }" if (parenthesized_expression "((this->strip_debug_non_line_).value != false)" ( (binary_expression "(this->strip_debug_non_line_).value != false" (field_expression "(this->strip_debug_non_line_).value" (parenthesized_expression "(this->strip_debug_non_line_)" ( (field_expression "this->strip_debug_non_line_" identifier -> field_identifier) )) . field_identifier) != false) )) (compound_statement "{\n      bVar23 = false;\n      goto LAB_000e79f9;\n    }" { (expression_statement "bVar23 = false;" (assignment_expression "bVar23 = false" identifier = false) ;) (goto_statement "goto LAB_000e79f9;" goto statement_identifier ;) })) (expression_statement "bVar23 = false;" (assignment_expression "bVar23 = false" identifier = false) ;) (if_statement "if ((this->Bshareable_).value != false) goto LAB_000e7a0c;" if (parenthesized_expression "((this->Bshareable_).value != false)" ( (binary_expression "(this->Bshareable_).value != false" (field_expression "(this->Bshareable_).value" (parenthesized_expression "(this->Bshareable_)" ( (field_expression "this->Bshareable_" identifier -> field_identifier) )) . field_identifier) != false) )) (goto_statement "goto LAB_000e7a0c;" goto statement_identifier ;)) }) (else_clause "else {\n    (this->strip_debug_).value = true;\nLAB_000e79ea:\n    bVar23 = true;\n    (this->strip_debug_non_line_).value = true;\nLAB_000e79f9:\n    (this->strip_debug_gdb_).value = true;\n    if ((this->Bshareable_).value != false) {\nLAB_000e7a0c:\n      (this->shared_).value = true;\n    }\n    if (((bVar25 != false) && ((this->relocatable_).value != false)) &&\n       ((this->strip_all_).value = false, !bVar23)) {\n                    /* WARNING: Subroutine does not return */\n      do_gold_unreachable("../../gold/options.cc",0x453,"finalize");\n    }\n  }" else (compound_statement "{\n    (this->strip_debug_).value = true;\nLAB_000e79ea:\n    bVar23 = true;\n    (this->strip_debug_non_line_).value = true;\nLAB_000e79f9:\n    (this->strip_debug_gdb_).value = true;\n    if ((this->Bshareable_).value != false) {\nLAB_000e7a0c:\n      (this->shared_).value = true;\n    }\n    if (((bVar25 != false) && ((this->relocatable_).value != false)) &&\n       ((this->strip_all_).value = false, !bVar23)) {\n                    /* WARNING: Subroutine does not return */\n      do_gold_unreachable("../../gold/options.cc",0x453,"finalize");\n    }\n  }" { (expression_statement "(this->strip_debug_).value = true;" (assignment_expression "(this->strip_debug_).value = true" (field_expression "(this->strip_debug_).value" (parenthesized_expression "(this->strip_debug_)" ( (field_expression "this->strip_debug_" identifier -> field_identifier) )) . field_identifier) = true) ;) (labeled_statement "LAB_000e79ea:\n    bVar23 = true;" statement_identifier : (expression_statement "bVar23 = true;" (assignment_expression "bVar23 = true" identifier = true) ;)) (expression_statement "(this->strip_debug_non_line_).value = true;" (assignment_expression "(this->strip_debug_non_line_).value = true" (field_expression "(this->strip_debug_non_line_).value" (parenthesized_expression "(this->strip_debug_non_line_)" ( (field_expression "this->strip_debug_non_line_" identifier -> field_identifier) )) . field_identifier) = true) ;) (labeled_statement "LAB_000e79f9:\n    (this->strip_debug_gdb_).value = true;" statement_identifier : (expression_statement "(this->strip_debug_gdb_).value = true;" (assignment_expression "(this->strip_debug_gdb_).value = true" (field_expression "(this->strip_debug_gdb_).value" (parenthesized_expression "(this->strip_debug_gdb_)" ( (field_expression "this->strip_debug_gdb_" identifier -> field_identifier) )) . field_identifier) = true) ;)) (if_statement "if ((this->Bshareable_).value != false) {\nLAB_000e7a0c:\n      (this->shared_).value = true;\n    }" if (parenthesized_expression "((this->Bshareable_).value != false)" ( (binary_expression "(this->Bshareable_).value != false" (field_expression "(this->Bshareable_).value" (parenthesized_expression "(this->Bshareable_)" ( (field_expression "this->Bshareable_" identifier -> field_identifier) )) . field_identifier) != false) )) (compound_statement "{\nLAB_000e7a0c:\n      (this->shared_).value = true;\n    }" { (labeled_statement "LAB_000e7a0c:\n      (this->shared_).value = true;" statement_identifier : (expression_statement "(this->shared_).value = true;" (assignment_expression "(this->shared_).value = true" (field_expression "(this->shared_).value" (parenthesized_expression "(this->shared_)" ( (field_expression "this->shared_" identifier -> field_identifier) )) . field_identifier) = true) ;)) })) (if_statement "if (((bVar25 != false) && ((this->relocatable_).value != false)) &&\n       ((this->strip_all_).value = false, !bVar23)) {\n                    /* WARNING: Subroutine does not return */\n      do_gold_unreachable("../../gold/options.cc",0x453,"finalize");\n    }" if (parenthesized_expression "(((bVar25 != false) && ((this->relocatable_).value != false)) &&\n       ((this->strip_all_).value = false, !bVar23))" ( (binary_expression "((bVar25 != false) && ((this->relocatable_).value != false)) &&\n       ((this->strip_all_).value = false, !bVar23)" (parenthesized_expression "((bVar25 != false) && ((this->relocatable_).value != false))" ( (binary_expression "(bVar25 != false) && ((this->relocatable_).value != false)" (parenthesized_expression "(bVar25 != false)" ( (binary_expression "bVar25 != false" identifier != false) )) && (parenthesized_expression "((this->relocatable_).value != false)" ( (binary_expression "(this->relocatable_).value != false" (field_expression "(this->relocatable_).value" (parenthesized_expression "(this->relocatable_)" ( (field_expression "this->relocatable_" identifier -> field_identifier) )) . field_identifier) != false) ))) )) && (parenthesized_expression "((this->strip_all_).value = false, !bVar23)" ( (comma_expression "(this->strip_all_).value = false, !bVar23" (assignment_expression "(this->strip_all_).value = false" (field_expression "(this->strip_all_).value" (parenthesized_expression "(this->strip_all_)" ( (field_expression "this->strip_all_" identifier -> field_identifier) )) . field_identifier) = false) , (unary_expression "!bVar23" ! identifier)) ))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n      do_gold_unreachable("../../gold/options.cc",0x453,"finalize");\n    }" { comment (expression_statement "do_gold_unreachable("../../gold/options.cc",0x453,"finalize");" (call_expression "do_gold_unreachable("../../gold/options.cc",0x453,"finalize")" identifier (argument_list "("../../gold/options.cc",0x453,"finalize")" ( (string_literal ""../../gold/options.cc"" " string_content ") , number_literal , (string_literal ""finalize"" " string_content ") ))) ;) })) }))) (if_statement "if ((this->dc_).value != false) {\n    (this->define_common_).value = true;\n  }" if (parenthesized_expression "((this->dc_).value != false)" ( (binary_expression "(this->dc_).value != false" (field_expression "(this->dc_).value" (parenthesized_expression "(this->dc_)" ( (field_expression "this->dc_" identifier -> field_identifier) )) . field_identifier) != false) )) (compound_statement "{\n    (this->define_common_).value = true;\n  }" { (expression_statement "(this->define_common_).value = true;" (assignment_expression "(this->define_common_).value = true" (field_expression "(this->define_common_).value" (parenthesized_expression "(this->define_common_)" ( (field_expression "this->define_common_" identifier -> field_identifier) )) . field_identifier) = true) ;) })) (if_statement "if ((this->dp_).value != false) {\n    (this->define_common_).value = true;\n  }" if (parenthesized_expression "((this->dp_).value != false)" ( (binary_expression "(this->dp_).value != false" (field_expression "(this->dp_).value" (parenthesized_expression "(this->dp_)" ( (field_expression "this->dp_" identifier -> field_identifier) )) . field_identifier) != false) )) (compound_statement "{\n    (this->define_common_).value = true;\n  }" { (expression_statement "(this->define_common_).value = true;" (assignment_expression "(this->define_common_).value = true" (field_expression "(this->define_common_).value" (parenthesized_expression "(this->define_common_)" ( (field_expression "this->define_common_" identifier -> field_identifier) )) . field_identifier) = true) ;) })) (if_statement "if ((this->define_common_).user_set_via_option == false) {\n    (this->define_common_).value = (bool)((this->relocatable_).value ^ 1);\n  }" if (parenthesized_expression "((this->define_common_).user_set_via_option == false)" ( (binary_expression "(this->define_common_).user_set_via_option == false" (field_expression "(this->define_common_).user_set_via_option" (parenthesized_expression "(this->define_common_)" ( (field_expression "this->define_common_" identifier -> field_identifier) )) . field_identifier) == false) )) (compound_statement "{\n    (this->define_common_).value = (bool)((this->relocatable_).value ^ 1);\n  }" { (expression_statement "(this->define_common_).value = (bool)((this->relocatable_).value ^ 1);" (assignment_expression "(this->define_common_).value = (bool)((this->relocatable_).value ^ 1)" (field_expression "(this->define_common_).value" (parenthesized_expression "(this->define_common_)" ( (field_expression "this->define_common_" identifier -> field_identifier) )) . field_identifier) = (cast_expression "(bool)((this->relocatable_).value ^ 1)" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "((this->relocatable_).value ^ 1)" ( (binary_expression "(this->relocatable_).value ^ 1" (field_expression "(this->relocatable_).value" (parenthesized_expression "(this->relocatable_)" ( (field_expression "this->relocatable_" identifier -> field_identifier) )) . field_identifier) ^ number_literal) )))) ;) })) (expression_statement "bVar25 = (this->execstack_).value == false;" (assignment_expression "bVar25 = (this->execstack_).value == false" identifier = (binary_expression "(this->execstack_).value == false" (field_expression "(this->execstack_).value" (parenthesized_expression "(this->execstack_)" ( (field_expression "this->execstack_" identifier -> field_identifier) )) . field_identifier) == false)) ;) (if_statement "if (bVar25) {\n    bVar25 = (this->noexecstack_).value == false;\n    if (!bVar25) {\n      this->execstack_status_ = EXECSTACK_NO;\n    }\n  }\n  else {\n    this->execstack_status_ = EXECSTACK_YES;\n  }" if (parenthesized_expression "(bVar25)" ( identifier )) (compound_statement "{\n    bVar25 = (this->noexecstack_).value == false;\n    if (!bVar25) {\n      this->execstack_status_ = EXECSTACK_NO;\n    }\n  }" { (expression_statement "bVar25 = (this->noexecstack_).value == false;" (assignment_expression "bVar25 = (this->noexecstack_).value == false" identifier = (binary_expression "(this->noexecstack_).value == false" (field_expression "(this->noexecstack_).value" (parenthesized_expression "(this->noexecstack_)" ( (field_expression "this->noexecstack_" identifier -> field_identifier) )) . field_identifier) == false)) ;) (if_statement "if (!bVar25) {\n      this->execstack_status_ = EXECSTACK_NO;\n    }" if (parenthesized_expression "(!bVar25)" ( (unary_expression "!bVar25" ! identifier) )) (compound_statement "{\n      this->execstack_status_ = EXECSTACK_NO;\n    }" { (expression_statement "this->execstack_status_ = EXECSTACK_NO;" (assignment_expression "this->execstack_status_ = EXECSTACK_NO" (field_expression "this->execstack_status_" identifier -> field_identifier) = identifier) ;) })) }) (else_clause "else {\n    this->execstack_status_ = EXECSTACK_YES;\n  }" else (compound_statement "{\n    this->execstack_status_ = EXECSTACK_YES;\n  }" { (expression_statement "this->execstack_status_ = EXECSTACK_YES;" (assignment_expression "this->execstack_status_ = EXECSTACK_YES" (field_expression "this->execstack_status_" identifier -> field_identifier) = identifier) ;) }))) (expression_statement "bVar23 = false;" (assignment_expression "bVar23 = false" identifier = false) ;) (expression_statement "iVar17 = 5;" (assignment_expression "iVar17 = 5" identifier = number_literal) ;) (expression_statement "pbVar20 = (byte *)(this->icf_).value;" (assignment_expression "pbVar20 = (byte *)(this->icf_).value" identifier = (cast_expression "(byte *)(this->icf_).value" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "(this->icf_).value" (parenthesized_expression "(this->icf_)" ( (field_expression "this->icf_" identifier -> field_identifier) )) . field_identifier))) ;) (expression_statement "pbVar21 = pbVar20;" (assignment_expression "pbVar21 = pbVar20" identifier = identifier) ;) (expression_statement "pbVar22 = (byte *)0x28e9b2;" (assignment_expression "pbVar22 = (byte *)0x28e9b2" identifier = (cast_expression "(byte *)0x28e9b2" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n    if (iVar17 == 0) break;\n    iVar17 = iVar17 + -1;\n    bVar23 = *pbVar21 < *pbVar22;\n    bVar25 = *pbVar21 == *pbVar22;\n    pbVar21 = pbVar21 + 1;\n    pbVar22 = pbVar22 + 1;\n  } while (bVar25);" do (compound_statement "{\n    if (iVar17 == 0) break;\n    iVar17 = iVar17 + -1;\n    bVar23 = *pbVar21 < *pbVar22;\n    bVar25 = *pbVar21 == *pbVar22;\n    pbVar21 = pbVar21 + 1;\n    pbVar22 = pbVar22 + 1;\n  }" { (if_statement "if (iVar17 == 0) break;" if (parenthesized_expression "(iVar17 == 0)" ( (binary_expression "iVar17 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar17 = iVar17 + -1;" (assignment_expression "iVar17 = iVar17 + -1" identifier = (binary_expression "iVar17 + -1" identifier + number_literal)) ;) (expression_statement "bVar23 = *pbVar21 < *pbVar22;" (assignment_expression "bVar23 = *pbVar21 < *pbVar22" identifier = (binary_expression "*pbVar21 < *pbVar22" (pointer_expression "*pbVar21" * identifier) < (pointer_expression "*pbVar22" * identifier))) ;) (expression_statement "bVar25 = *pbVar21 == *pbVar22;" (assignment_expression "bVar25 = *pbVar21 == *pbVar22" identifier = (binary_expression "*pbVar21 == *pbVar22" (pointer_expression "*pbVar21" * identifier) == (pointer_expression "*pbVar22" * identifier))) ;) (expression_statement "pbVar21 = pbVar21 + 1;" (assignment_expression "pbVar21 = pbVar21 + 1" identifier = (binary_expression "pbVar21 + 1" identifier + number_literal)) ;) (expression_statement "pbVar22 = pbVar22 + 1;" (assignment_expression "pbVar22 = pbVar22 + 1" identifier = (binary_expression "pbVar22 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (expression_statement "bVar24 = false;" (assignment_expression "bVar24 = false" identifier = false) ;) (expression_statement "bVar25 = (!bVar23 && !bVar25) == bVar23;" (assignment_expression "bVar25 = (!bVar23 && !bVar25) == bVar23" identifier = (binary_expression "(!bVar23 && !bVar25) == bVar23" (parenthesized_expression "(!bVar23 && !bVar25)" ( (binary_expression "!bVar23 && !bVar25" (unary_expression "!bVar23" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar25) {\n    this->icf_status_ = ICF_NONE;\n  }\n  else {\n    iVar17 = 5;\n    pbVar21 = (byte *)0x28e304;\n    do {\n      if (iVar17 == 0) break;\n      iVar17 = iVar17 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar25 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + 1;\n      pbVar21 = pbVar21 + 1;\n    } while (bVar25);\n    this->icf_status_ = ((!bVar24 && !bVar25) == bVar24) + ICF_ALL;\n  }" if (parenthesized_expression "(bVar25)" ( identifier )) (compound_statement "{\n    this->icf_status_ = ICF_NONE;\n  }" { (expression_statement "this->icf_status_ = ICF_NONE;" (assignment_expression "this->icf_status_ = ICF_NONE" (field_expression "this->icf_status_" identifier -> field_identifier) = identifier) ;) }) (else_clause "else {\n    iVar17 = 5;\n    pbVar21 = (byte *)0x28e304;\n    do {\n      if (iVar17 == 0) break;\n      iVar17 = iVar17 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar25 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + 1;\n      pbVar21 = pbVar21 + 1;\n    } while (bVar25);\n    this->icf_status_ = ((!bVar24 && !bVar25) == bVar24) + ICF_ALL;\n  }" else (compound_statement "{\n    iVar17 = 5;\n    pbVar21 = (byte *)0x28e304;\n    do {\n      if (iVar17 == 0) break;\n      iVar17 = iVar17 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar25 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + 1;\n      pbVar21 = pbVar21 + 1;\n    } while (bVar25);\n    this->icf_status_ = ((!bVar24 && !bVar25) == bVar24) + ICF_ALL;\n  }" { (expression_statement "iVar17 = 5;" (assignment_expression "iVar17 = 5" identifier = number_literal) ;) (expression_statement "pbVar21 = (byte *)0x28e304;" (assignment_expression "pbVar21 = (byte *)0x28e304" identifier = (cast_expression "(byte *)0x28e304" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n      if (iVar17 == 0) break;\n      iVar17 = iVar17 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar25 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + 1;\n      pbVar21 = pbVar21 + 1;\n    } while (bVar25);" do (compound_statement "{\n      if (iVar17 == 0) break;\n      iVar17 = iVar17 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar25 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + 1;\n      pbVar21 = pbVar21 + 1;\n    }" { (if_statement "if (iVar17 == 0) break;" if (parenthesized_expression "(iVar17 == 0)" ( (binary_expression "iVar17 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar17 = iVar17 + -1;" (assignment_expression "iVar17 = iVar17 + -1" identifier = (binary_expression "iVar17 + -1" identifier + number_literal)) ;) (expression_statement "bVar24 = *pbVar20 < *pbVar21;" (assignment_expression "bVar24 = *pbVar20 < *pbVar21" identifier = (binary_expression "*pbVar20 < *pbVar21" (pointer_expression "*pbVar20" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar25 = *pbVar20 == *pbVar21;" (assignment_expression "bVar25 = *pbVar20 == *pbVar21" identifier = (binary_expression "*pbVar20 == *pbVar21" (pointer_expression "*pbVar20" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar20 = pbVar20 + 1;" (assignment_expression "pbVar20 = pbVar20 + 1" identifier = (binary_expression "pbVar20 + 1" identifier + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + 1;" (assignment_expression "pbVar21 = pbVar21 + 1" identifier = (binary_expression "pbVar21 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (expression_statement "this->icf_status_ = ((!bVar24 && !bVar25) == bVar24) + ICF_ALL;" (assignment_expression "this->icf_status_ = ((!bVar24 && !bVar25) == bVar24) + ICF_ALL" (field_expression "this->icf_status_" identifier -> field_identifier) = (binary_expression "((!bVar24 && !bVar25) == bVar24) + ICF_ALL" (parenthesized_expression "((!bVar24 && !bVar25) == bVar24)" ( (binary_expression "(!bVar24 && !bVar25) == bVar24" (parenthesized_expression "(!bVar24 && !bVar25)" ( (binary_expression "!bVar24 && !bVar25" (unary_expression "!bVar24" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) == identifier) )) + identifier)) ;) }))) (if_statement "if ((this->demangle_).user_set_via_option == false) {\n    if ((this->no_demangle_).user_set_via_option == false) {\n      pcVar15 = getenv("COLLECT_NO_DEMANGLE");\n      this->do_demangle_ = pcVar15 == (char *)0x0;\n    }\n    else {\n      this->do_demangle_ = false;\n    }\n  }\n  else {\n    pcVar15 = (this->demangle_).value;\n    this->do_demangle_ = true;\n    if (*pcVar15 != '\0') {\n      style = cplus_demangle_name_to_style(pcVar15);\n      if (style == unknown_demangling) {\n                    /* WARNING: Subroutine does not return */\n        gold_fatal("unknown demangling style \'%s\'");\n      }\n      cplus_demangle_set_style(style);\n    }\n  }" if (parenthesized_expression "((this->demangle_).user_set_via_option == false)" ( (binary_expression "(this->demangle_).user_set_via_option == false" (field_expression "(this->demangle_).user_set_via_option" (parenthesized_expression "(this->demangle_)" ( (field_expression "this->demangle_" identifier -> field_identifier) )) . field_identifier) == false) )) (compound_statement "{\n    if ((this->no_demangle_).user_set_via_option == false) {\n      pcVar15 = getenv("COLLECT_NO_DEMANGLE");\n      this->do_demangle_ = pcVar15 == (char *)0x0;\n    }\n    else {\n      this->do_demangle_ = false;\n    }\n  }" { (if_statement "if ((this->no_demangle_).user_set_via_option == false) {\n      pcVar15 = getenv("COLLECT_NO_DEMANGLE");\n      this->do_demangle_ = pcVar15 == (char *)0x0;\n    }\n    else {\n      this->do_demangle_ = false;\n    }" if (parenthesized_expression "((this->no_demangle_).user_set_via_option == false)" ( (binary_expression "(this->no_demangle_).user_set_via_option == false" (field_expression "(this->no_demangle_).user_set_via_option" (parenthesized_expression "(this->no_demangle_)" ( (field_expression "this->no_demangle_" identifier -> field_identifier) )) . field_identifier) == false) )) (compound_statement "{\n      pcVar15 = getenv("COLLECT_NO_DEMANGLE");\n      this->do_demangle_ = pcVar15 == (char *)0x0;\n    }" { (expression_statement "pcVar15 = getenv("COLLECT_NO_DEMANGLE");" (assignment_expression "pcVar15 = getenv("COLLECT_NO_DEMANGLE")" identifier = (call_expression "getenv("COLLECT_NO_DEMANGLE")" identifier (argument_list "("COLLECT_NO_DEMANGLE")" ( (string_literal ""COLLECT_NO_DEMANGLE"" " string_content ") )))) ;) (expression_statement "this->do_demangle_ = pcVar15 == (char *)0x0;" (assignment_expression "this->do_demangle_ = pcVar15 == (char *)0x0" (field_expression "this->do_demangle_" identifier -> field_identifier) = (binary_expression "pcVar15 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal))) ;) }) (else_clause "else {\n      this->do_demangle_ = false;\n    }" else (compound_statement "{\n      this->do_demangle_ = false;\n    }" { (expression_statement "this->do_demangle_ = false;" (assignment_expression "this->do_demangle_ = false" (field_expression "this->do_demangle_" identifier -> field_identifier) = false) ;) }))) }) (else_clause "else {\n    pcVar15 = (this->demangle_).value;\n    this->do_demangle_ = true;\n    if (*pcVar15 != '\0') {\n      style = cplus_demangle_name_to_style(pcVar15);\n      if (style == unknown_demangling) {\n                    /* WARNING: Subroutine does not return */\n        gold_fatal("unknown demangling style \'%s\'");\n      }\n      cplus_demangle_set_style(style);\n    }\n  }" else (compound_statement "{\n    pcVar15 = (this->demangle_).value;\n    this->do_demangle_ = true;\n    if (*pcVar15 != '\0') {\n      style = cplus_demangle_name_to_style(pcVar15);\n      if (style == unknown_demangling) {\n                    /* WARNING: Subroutine does not return */\n        gold_fatal("unknown demangling style \'%s\'");\n      }\n      cplus_demangle_set_style(style);\n    }\n  }" { (expression_statement "pcVar15 = (this->demangle_).value;" (assignment_expression "pcVar15 = (this->demangle_).value" identifier = (field_expression "(this->demangle_).value" (parenthesized_expression "(this->demangle_)" ( (field_expression "this->demangle_" identifier -> field_identifier) )) . field_identifier)) ;) (expression_statement "this->do_demangle_ = true;" (assignment_expression "this->do_demangle_ = true" (field_expression "this->do_demangle_" identifier -> field_identifier) = true) ;) (if_statement "if (*pcVar15 != '\0') {\n      style = cplus_demangle_name_to_style(pcVar15);\n      if (style == unknown_demangling) {\n                    /* WARNING: Subroutine does not return */\n        gold_fatal("unknown demangling style \'%s\'");\n      }\n      cplus_demangle_set_style(style);\n    }" if (parenthesized_expression "(*pcVar15 != '\0')" ( (binary_expression "*pcVar15 != '\0'" (pointer_expression "*pcVar15" * identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      style = cplus_demangle_name_to_style(pcVar15);\n      if (style == unknown_demangling) {\n                    /* WARNING: Subroutine does not return */\n        gold_fatal("unknown demangling style \'%s\'");\n      }\n      cplus_demangle_set_style(style);\n    }" { (expression_statement "style = cplus_demangle_name_to_style(pcVar15);" (assignment_expression "style = cplus_demangle_name_to_style(pcVar15)" identifier = (call_expression "cplus_demangle_name_to_style(pcVar15)" identifier (argument_list "(pcVar15)" ( identifier )))) ;) (if_statement "if (style == unknown_demangling) {\n                    /* WARNING: Subroutine does not return */\n        gold_fatal("unknown demangling style \'%s\'");\n      }" if (parenthesized_expression "(style == unknown_demangling)" ( (binary_expression "style == unknown_demangling" identifier == identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n        gold_fatal("unknown demangling style \'%s\'");\n      }" { comment (expression_statement "gold_fatal("unknown demangling style \'%s\'");" (call_expression "gold_fatal("unknown demangling style \'%s\'")" identifier (argument_list "("unknown demangling style \'%s\'")" ( (string_literal ""unknown demangling style \'%s\'"" " string_content escape_sequence string_content escape_sequence ") ))) ;) })) (expression_statement "cplus_demangle_set_style(style);" (call_expression "cplus_demangle_set_style(style)" identifier (argument_list "(style)" ( identifier ))) ;) })) }))) (expression_statement "local_1f0 = (byte *)0x28e9b2;" (assignment_expression "local_1f0 = (byte *)0x28e9b2" identifier = (cast_expression "(byte *)0x28e9b2" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;) (expression_statement "bVar23 = (this->orphan_handling_).user_set_via_option == false;" (assignment_expression "bVar23 = (this->orphan_handling_).user_set_via_option == false" identifier = (binary_expression "(this->orphan_handling_).user_set_via_option == false" (field_expression "(this->orphan_handling_).user_set_via_option" (parenthesized_expression "(this->orphan_handling_)" ( (field_expression "this->orphan_handling_" identifier -> field_identifier) )) . field_identifier) == false)) ;) (if_statement "if (!bVar23) {\n    pbVar20 = (byte *)(this->orphan_handling_).value;\n    iVar17 = 6;\n    pbVar21 = pbVar20;\n    pbVar22 = (byte *)0x2a3d62;\n    do {\n      if (iVar17 == 0) break;\n      iVar17 = iVar17 + -1;\n      bVar25 = *pbVar21 < *pbVar22;\n      bVar23 = *pbVar21 == *pbVar22;\n      pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n      pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n    } while (bVar23);\n    bVar24 = false;\n    bVar25 = (!bVar25 && !bVar23) == bVar25;\n    if (bVar25) {\n      this->orphan_handling_enum_ = ORPHAN_PLACE;\n    }\n    else {\n      iVar17 = 8;\n      pbVar21 = pbVar20;\n      pbVar22 = (byte *)"discard";\n      do {\n        if (iVar17 == 0) break;\n        iVar17 = iVar17 + -1;\n        bVar24 = *pbVar21 < *pbVar22;\n        bVar25 = *pbVar21 == *pbVar22;\n        pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n        pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n      } while (bVar25);\n      bVar23 = false;\n      bVar25 = (!bVar24 && !bVar25) == bVar24;\n      if (bVar25) {\n        this->orphan_handling_enum_ = ORPHAN_DISCARD;\n      }\n      else {\n        iVar17 = 5;\n        pbVar21 = pbVar20;\n        pbVar22 = &DAT_00280715;\n        do {\n          if (iVar17 == 0) break;\n          iVar17 = iVar17 + -1;\n          bVar23 = *pbVar21 < *pbVar22;\n          bVar25 = *pbVar21 == *pbVar22;\n          pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n        } while (bVar25);\n        bVar24 = false;\n        bVar25 = (!bVar23 && !bVar25) == bVar23;\n        if (bVar25) {\n          this->orphan_handling_enum_ = ORPHAN_WARN;\n        }\n        else {\n          iVar17 = 6;\n          pbVar21 = (byte *)0x2a4fde;\n          do {\n            if (iVar17 == 0) break;\n            iVar17 = iVar17 + -1;\n            bVar24 = *pbVar20 < *pbVar21;\n            bVar25 = *pbVar20 == *pbVar21;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          } while (bVar25);\n          if ((!bVar24 && !bVar25) == bVar24) {\n            this->orphan_handling_enum_ = ORPHAN_ERROR;\n          }\n        }\n      }\n    }\n  }" if (parenthesized_expression "(!bVar23)" ( (unary_expression "!bVar23" ! identifier) )) (compound_statement "{\n    pbVar20 = (byte *)(this->orphan_handling_).value;\n    iVar17 = 6;\n    pbVar21 = pbVar20;\n    pbVar22 = (byte *)0x2a3d62;\n    do {\n      if (iVar17 == 0) break;\n      iVar17 = iVar17 + -1;\n      bVar25 = *pbVar21 < *pbVar22;\n      bVar23 = *pbVar21 == *pbVar22;\n      pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n      pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n    } while (bVar23);\n    bVar24 = false;\n    bVar25 = (!bVar25 && !bVar23) == bVar25;\n    if (bVar25) {\n      this->orphan_handling_enum_ = ORPHAN_PLACE;\n    }\n    else {\n      iVar17 = 8;\n      pbVar21 = pbVar20;\n      pbVar22 = (byte *)"discard";\n      do {\n        if (iVar17 == 0) break;\n        iVar17 = iVar17 + -1;\n        bVar24 = *pbVar21 < *pbVar22;\n        bVar25 = *pbVar21 == *pbVar22;\n        pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n        pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n      } while (bVar25);\n      bVar23 = false;\n      bVar25 = (!bVar24 && !bVar25) == bVar24;\n      if (bVar25) {\n        this->orphan_handling_enum_ = ORPHAN_DISCARD;\n      }\n      else {\n        iVar17 = 5;\n        pbVar21 = pbVar20;\n        pbVar22 = &DAT_00280715;\n        do {\n          if (iVar17 == 0) break;\n          iVar17 = iVar17 + -1;\n          bVar23 = *pbVar21 < *pbVar22;\n          bVar25 = *pbVar21 == *pbVar22;\n          pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n        } while (bVar25);\n        bVar24 = false;\n        bVar25 = (!bVar23 && !bVar25) == bVar23;\n        if (bVar25) {\n          this->orphan_handling_enum_ = ORPHAN_WARN;\n        }\n        else {\n          iVar17 = 6;\n          pbVar21 = (byte *)0x2a4fde;\n          do {\n            if (iVar17 == 0) break;\n            iVar17 = iVar17 + -1;\n            bVar24 = *pbVar20 < *pbVar21;\n            bVar25 = *pbVar20 == *pbVar21;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          } while (bVar25);\n          if ((!bVar24 && !bVar25) == bVar24) {\n            this->orphan_handling_enum_ = ORPHAN_ERROR;\n          }\n        }\n      }\n    }\n  }" { (expression_statement "pbVar20 = (byte *)(this->orphan_handling_).value;" (assignment_expression "pbVar20 = (byte *)(this->orphan_handling_).value" identifier = (cast_expression "(byte *)(this->orphan_handling_).value" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "(this->orphan_handling_).value" (parenthesized_expression "(this->orphan_handling_)" ( (field_expression "this->orphan_handling_" identifier -> field_identifier) )) . field_identifier))) ;) (expression_statement "iVar17 = 6;" (assignment_expression "iVar17 = 6" identifier = number_literal) ;) (expression_statement "pbVar21 = pbVar20;" (assignment_expression "pbVar21 = pbVar20" identifier = identifier) ;) (expression_statement "pbVar22 = (byte *)0x2a3d62;" (assignment_expression "pbVar22 = (byte *)0x2a3d62" identifier = (cast_expression "(byte *)0x2a3d62" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n      if (iVar17 == 0) break;\n      iVar17 = iVar17 + -1;\n      bVar25 = *pbVar21 < *pbVar22;\n      bVar23 = *pbVar21 == *pbVar22;\n      pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n      pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n    } while (bVar23);" do (compound_statement "{\n      if (iVar17 == 0) break;\n      iVar17 = iVar17 + -1;\n      bVar25 = *pbVar21 < *pbVar22;\n      bVar23 = *pbVar21 == *pbVar22;\n      pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n      pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n    }" { (if_statement "if (iVar17 == 0) break;" if (parenthesized_expression "(iVar17 == 0)" ( (binary_expression "iVar17 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar17 = iVar17 + -1;" (assignment_expression "iVar17 = iVar17 + -1" identifier = (binary_expression "iVar17 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar21 < *pbVar22;" (assignment_expression "bVar25 = *pbVar21 < *pbVar22" identifier = (binary_expression "*pbVar21 < *pbVar22" (pointer_expression "*pbVar21" * identifier) < (pointer_expression "*pbVar22" * identifier))) ;) (expression_statement "bVar23 = *pbVar21 == *pbVar22;" (assignment_expression "bVar23 = *pbVar21 == *pbVar22" identifier = (binary_expression "*pbVar21 == *pbVar22" (pointer_expression "*pbVar21" * identifier) == (pointer_expression "*pbVar22" * identifier))) ;) (expression_statement "pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1" identifier = (binary_expression "pbVar21 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar21 + (uint)bVar26 * -2" identifier + (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1" identifier = (binary_expression "pbVar22 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar22 + (uint)bVar26 * -2" identifier + (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar23)" ( identifier )) ;) (expression_statement "bVar24 = false;" (assignment_expression "bVar24 = false" identifier = false) ;) (expression_statement "bVar25 = (!bVar25 && !bVar23) == bVar25;" (assignment_expression "bVar25 = (!bVar25 && !bVar23) == bVar25" identifier = (binary_expression "(!bVar25 && !bVar23) == bVar25" (parenthesized_expression "(!bVar25 && !bVar23)" ( (binary_expression "!bVar25 && !bVar23" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar23" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar25) {\n      this->orphan_handling_enum_ = ORPHAN_PLACE;\n    }\n    else {\n      iVar17 = 8;\n      pbVar21 = pbVar20;\n      pbVar22 = (byte *)"discard";\n      do {\n        if (iVar17 == 0) break;\n        iVar17 = iVar17 + -1;\n        bVar24 = *pbVar21 < *pbVar22;\n        bVar25 = *pbVar21 == *pbVar22;\n        pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n        pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n      } while (bVar25);\n      bVar23 = false;\n      bVar25 = (!bVar24 && !bVar25) == bVar24;\n      if (bVar25) {\n        this->orphan_handling_enum_ = ORPHAN_DISCARD;\n      }\n      else {\n        iVar17 = 5;\n        pbVar21 = pbVar20;\n        pbVar22 = &DAT_00280715;\n        do {\n          if (iVar17 == 0) break;\n          iVar17 = iVar17 + -1;\n          bVar23 = *pbVar21 < *pbVar22;\n          bVar25 = *pbVar21 == *pbVar22;\n          pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n        } while (bVar25);\n        bVar24 = false;\n        bVar25 = (!bVar23 && !bVar25) == bVar23;\n        if (bVar25) {\n          this->orphan_handling_enum_ = ORPHAN_WARN;\n        }\n        else {\n          iVar17 = 6;\n          pbVar21 = (byte *)0x2a4fde;\n          do {\n            if (iVar17 == 0) break;\n            iVar17 = iVar17 + -1;\n            bVar24 = *pbVar20 < *pbVar21;\n            bVar25 = *pbVar20 == *pbVar21;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          } while (bVar25);\n          if ((!bVar24 && !bVar25) == bVar24) {\n            this->orphan_handling_enum_ = ORPHAN_ERROR;\n          }\n        }\n      }\n    }" if (parenthesized_expression "(bVar25)" ( identifier )) (compound_statement "{\n      this->orphan_handling_enum_ = ORPHAN_PLACE;\n    }" { (expression_statement "this->orphan_handling_enum_ = ORPHAN_PLACE;" (assignment_expression "this->orphan_handling_enum_ = ORPHAN_PLACE" (field_expression "this->orphan_handling_enum_" identifier -> field_identifier) = identifier) ;) }) (else_clause "else {\n      iVar17 = 8;\n      pbVar21 = pbVar20;\n      pbVar22 = (byte *)"discard";\n      do {\n        if (iVar17 == 0) break;\n        iVar17 = iVar17 + -1;\n        bVar24 = *pbVar21 < *pbVar22;\n        bVar25 = *pbVar21 == *pbVar22;\n        pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n        pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n      } while (bVar25);\n      bVar23 = false;\n      bVar25 = (!bVar24 && !bVar25) == bVar24;\n      if (bVar25) {\n        this->orphan_handling_enum_ = ORPHAN_DISCARD;\n      }\n      else {\n        iVar17 = 5;\n        pbVar21 = pbVar20;\n        pbVar22 = &DAT_00280715;\n        do {\n          if (iVar17 == 0) break;\n          iVar17 = iVar17 + -1;\n          bVar23 = *pbVar21 < *pbVar22;\n          bVar25 = *pbVar21 == *pbVar22;\n          pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n        } while (bVar25);\n        bVar24 = false;\n        bVar25 = (!bVar23 && !bVar25) == bVar23;\n        if (bVar25) {\n          this->orphan_handling_enum_ = ORPHAN_WARN;\n        }\n        else {\n          iVar17 = 6;\n          pbVar21 = (byte *)0x2a4fde;\n          do {\n            if (iVar17 == 0) break;\n            iVar17 = iVar17 + -1;\n            bVar24 = *pbVar20 < *pbVar21;\n            bVar25 = *pbVar20 == *pbVar21;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          } while (bVar25);\n          if ((!bVar24 && !bVar25) == bVar24) {\n            this->orphan_handling_enum_ = ORPHAN_ERROR;\n          }\n        }\n      }\n    }" else (compound_statement "{\n      iVar17 = 8;\n      pbVar21 = pbVar20;\n      pbVar22 = (byte *)"discard";\n      do {\n        if (iVar17 == 0) break;\n        iVar17 = iVar17 + -1;\n        bVar24 = *pbVar21 < *pbVar22;\n        bVar25 = *pbVar21 == *pbVar22;\n        pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n        pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n      } while (bVar25);\n      bVar23 = false;\n      bVar25 = (!bVar24 && !bVar25) == bVar24;\n      if (bVar25) {\n        this->orphan_handling_enum_ = ORPHAN_DISCARD;\n      }\n      else {\n        iVar17 = 5;\n        pbVar21 = pbVar20;\n        pbVar22 = &DAT_00280715;\n        do {\n          if (iVar17 == 0) break;\n          iVar17 = iVar17 + -1;\n          bVar23 = *pbVar21 < *pbVar22;\n          bVar25 = *pbVar21 == *pbVar22;\n          pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n        } while (bVar25);\n        bVar24 = false;\n        bVar25 = (!bVar23 && !bVar25) == bVar23;\n        if (bVar25) {\n          this->orphan_handling_enum_ = ORPHAN_WARN;\n        }\n        else {\n          iVar17 = 6;\n          pbVar21 = (byte *)0x2a4fde;\n          do {\n            if (iVar17 == 0) break;\n            iVar17 = iVar17 + -1;\n            bVar24 = *pbVar20 < *pbVar21;\n            bVar25 = *pbVar20 == *pbVar21;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          } while (bVar25);\n          if ((!bVar24 && !bVar25) == bVar24) {\n            this->orphan_handling_enum_ = ORPHAN_ERROR;\n          }\n        }\n      }\n    }" { (expression_statement "iVar17 = 8;" (assignment_expression "iVar17 = 8" identifier = number_literal) ;) (expression_statement "pbVar21 = pbVar20;" (assignment_expression "pbVar21 = pbVar20" identifier = identifier) ;) (expression_statement "pbVar22 = (byte *)"discard";" (assignment_expression "pbVar22 = (byte *)"discard"" identifier = (cast_expression "(byte *)"discard"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal ""discard"" " string_content "))) ;) (do_statement "do {\n        if (iVar17 == 0) break;\n        iVar17 = iVar17 + -1;\n        bVar24 = *pbVar21 < *pbVar22;\n        bVar25 = *pbVar21 == *pbVar22;\n        pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n        pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n      } while (bVar25);" do (compound_statement "{\n        if (iVar17 == 0) break;\n        iVar17 = iVar17 + -1;\n        bVar24 = *pbVar21 < *pbVar22;\n        bVar25 = *pbVar21 == *pbVar22;\n        pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n        pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n      }" { (if_statement "if (iVar17 == 0) break;" if (parenthesized_expression "(iVar17 == 0)" ( (binary_expression "iVar17 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar17 = iVar17 + -1;" (assignment_expression "iVar17 = iVar17 + -1" identifier = (binary_expression "iVar17 + -1" identifier + number_literal)) ;) (expression_statement "bVar24 = *pbVar21 < *pbVar22;" (assignment_expression "bVar24 = *pbVar21 < *pbVar22" identifier = (binary_expression "*pbVar21 < *pbVar22" (pointer_expression "*pbVar21" * identifier) < (pointer_expression "*pbVar22" * identifier))) ;) (expression_statement "bVar25 = *pbVar21 == *pbVar22;" (assignment_expression "bVar25 = *pbVar21 == *pbVar22" identifier = (binary_expression "*pbVar21 == *pbVar22" (pointer_expression "*pbVar21" * identifier) == (pointer_expression "*pbVar22" * identifier))) ;) (expression_statement "pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1" identifier = (binary_expression "pbVar21 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar21 + (uint)bVar26 * -2" identifier + (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1" identifier = (binary_expression "pbVar22 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar22 + (uint)bVar26 * -2" identifier + (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (expression_statement "bVar23 = false;" (assignment_expression "bVar23 = false" identifier = false) ;) (expression_statement "bVar25 = (!bVar24 && !bVar25) == bVar24;" (assignment_expression "bVar25 = (!bVar24 && !bVar25) == bVar24" identifier = (binary_expression "(!bVar24 && !bVar25) == bVar24" (parenthesized_expression "(!bVar24 && !bVar25)" ( (binary_expression "!bVar24 && !bVar25" (unary_expression "!bVar24" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar25) {\n        this->orphan_handling_enum_ = ORPHAN_DISCARD;\n      }\n      else {\n        iVar17 = 5;\n        pbVar21 = pbVar20;\n        pbVar22 = &DAT_00280715;\n        do {\n          if (iVar17 == 0) break;\n          iVar17 = iVar17 + -1;\n          bVar23 = *pbVar21 < *pbVar22;\n          bVar25 = *pbVar21 == *pbVar22;\n          pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n        } while (bVar25);\n        bVar24 = false;\n        bVar25 = (!bVar23 && !bVar25) == bVar23;\n        if (bVar25) {\n          this->orphan_handling_enum_ = ORPHAN_WARN;\n        }\n        else {\n          iVar17 = 6;\n          pbVar21 = (byte *)0x2a4fde;\n          do {\n            if (iVar17 == 0) break;\n            iVar17 = iVar17 + -1;\n            bVar24 = *pbVar20 < *pbVar21;\n            bVar25 = *pbVar20 == *pbVar21;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          } while (bVar25);\n          if ((!bVar24 && !bVar25) == bVar24) {\n            this->orphan_handling_enum_ = ORPHAN_ERROR;\n          }\n        }\n      }" if (parenthesized_expression "(bVar25)" ( identifier )) (compound_statement "{\n        this->orphan_handling_enum_ = ORPHAN_DISCARD;\n      }" { (expression_statement "this->orphan_handling_enum_ = ORPHAN_DISCARD;" (assignment_expression "this->orphan_handling_enum_ = ORPHAN_DISCARD" (field_expression "this->orphan_handling_enum_" identifier -> field_identifier) = identifier) ;) }) (else_clause "else {\n        iVar17 = 5;\n        pbVar21 = pbVar20;\n        pbVar22 = &DAT_00280715;\n        do {\n          if (iVar17 == 0) break;\n          iVar17 = iVar17 + -1;\n          bVar23 = *pbVar21 < *pbVar22;\n          bVar25 = *pbVar21 == *pbVar22;\n          pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n        } while (bVar25);\n        bVar24 = false;\n        bVar25 = (!bVar23 && !bVar25) == bVar23;\n        if (bVar25) {\n          this->orphan_handling_enum_ = ORPHAN_WARN;\n        }\n        else {\n          iVar17 = 6;\n          pbVar21 = (byte *)0x2a4fde;\n          do {\n            if (iVar17 == 0) break;\n            iVar17 = iVar17 + -1;\n            bVar24 = *pbVar20 < *pbVar21;\n            bVar25 = *pbVar20 == *pbVar21;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          } while (bVar25);\n          if ((!bVar24 && !bVar25) == bVar24) {\n            this->orphan_handling_enum_ = ORPHAN_ERROR;\n          }\n        }\n      }" else (compound_statement "{\n        iVar17 = 5;\n        pbVar21 = pbVar20;\n        pbVar22 = &DAT_00280715;\n        do {\n          if (iVar17 == 0) break;\n          iVar17 = iVar17 + -1;\n          bVar23 = *pbVar21 < *pbVar22;\n          bVar25 = *pbVar21 == *pbVar22;\n          pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n        } while (bVar25);\n        bVar24 = false;\n        bVar25 = (!bVar23 && !bVar25) == bVar23;\n        if (bVar25) {\n          this->orphan_handling_enum_ = ORPHAN_WARN;\n        }\n        else {\n          iVar17 = 6;\n          pbVar21 = (byte *)0x2a4fde;\n          do {\n            if (iVar17 == 0) break;\n            iVar17 = iVar17 + -1;\n            bVar24 = *pbVar20 < *pbVar21;\n            bVar25 = *pbVar20 == *pbVar21;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          } while (bVar25);\n          if ((!bVar24 && !bVar25) == bVar24) {\n            this->orphan_handling_enum_ = ORPHAN_ERROR;\n          }\n        }\n      }" { (expression_statement "iVar17 = 5;" (assignment_expression "iVar17 = 5" identifier = number_literal) ;) (expression_statement "pbVar21 = pbVar20;" (assignment_expression "pbVar21 = pbVar20" identifier = identifier) ;) (expression_statement "pbVar22 = &DAT_00280715;" (assignment_expression "pbVar22 = &DAT_00280715" identifier = (pointer_expression "&DAT_00280715" & identifier)) ;) (do_statement "do {\n          if (iVar17 == 0) break;\n          iVar17 = iVar17 + -1;\n          bVar23 = *pbVar21 < *pbVar22;\n          bVar25 = *pbVar21 == *pbVar22;\n          pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n        } while (bVar25);" do (compound_statement "{\n          if (iVar17 == 0) break;\n          iVar17 = iVar17 + -1;\n          bVar23 = *pbVar21 < *pbVar22;\n          bVar25 = *pbVar21 == *pbVar22;\n          pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;\n        }" { (if_statement "if (iVar17 == 0) break;" if (parenthesized_expression "(iVar17 == 0)" ( (binary_expression "iVar17 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar17 = iVar17 + -1;" (assignment_expression "iVar17 = iVar17 + -1" identifier = (binary_expression "iVar17 + -1" identifier + number_literal)) ;) (expression_statement "bVar23 = *pbVar21 < *pbVar22;" (assignment_expression "bVar23 = *pbVar21 < *pbVar22" identifier = (binary_expression "*pbVar21 < *pbVar22" (pointer_expression "*pbVar21" * identifier) < (pointer_expression "*pbVar22" * identifier))) ;) (expression_statement "bVar25 = *pbVar21 == *pbVar22;" (assignment_expression "bVar25 = *pbVar21 == *pbVar22" identifier = (binary_expression "*pbVar21 == *pbVar22" (pointer_expression "*pbVar21" * identifier) == (pointer_expression "*pbVar22" * identifier))) ;) (expression_statement "pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1" identifier = (binary_expression "pbVar21 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar21 + (uint)bVar26 * -2" identifier + (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar22 = pbVar22 + (uint)bVar26 * -2 + 1" identifier = (binary_expression "pbVar22 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar22 + (uint)bVar26 * -2" identifier + (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (expression_statement "bVar24 = false;" (assignment_expression "bVar24 = false" identifier = false) ;) (expression_statement "bVar25 = (!bVar23 && !bVar25) == bVar23;" (assignment_expression "bVar25 = (!bVar23 && !bVar25) == bVar23" identifier = (binary_expression "(!bVar23 && !bVar25) == bVar23" (parenthesized_expression "(!bVar23 && !bVar25)" ( (binary_expression "!bVar23 && !bVar25" (unary_expression "!bVar23" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar25) {\n          this->orphan_handling_enum_ = ORPHAN_WARN;\n        }\n        else {\n          iVar17 = 6;\n          pbVar21 = (byte *)0x2a4fde;\n          do {\n            if (iVar17 == 0) break;\n            iVar17 = iVar17 + -1;\n            bVar24 = *pbVar20 < *pbVar21;\n            bVar25 = *pbVar20 == *pbVar21;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          } while (bVar25);\n          if ((!bVar24 && !bVar25) == bVar24) {\n            this->orphan_handling_enum_ = ORPHAN_ERROR;\n          }\n        }" if (parenthesized_expression "(bVar25)" ( identifier )) (compound_statement "{\n          this->orphan_handling_enum_ = ORPHAN_WARN;\n        }" { (expression_statement "this->orphan_handling_enum_ = ORPHAN_WARN;" (assignment_expression "this->orphan_handling_enum_ = ORPHAN_WARN" (field_expression "this->orphan_handling_enum_" identifier -> field_identifier) = identifier) ;) }) (else_clause "else {\n          iVar17 = 6;\n          pbVar21 = (byte *)0x2a4fde;\n          do {\n            if (iVar17 == 0) break;\n            iVar17 = iVar17 + -1;\n            bVar24 = *pbVar20 < *pbVar21;\n            bVar25 = *pbVar20 == *pbVar21;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          } while (bVar25);\n          if ((!bVar24 && !bVar25) == bVar24) {\n            this->orphan_handling_enum_ = ORPHAN_ERROR;\n          }\n        }" else (compound_statement "{\n          iVar17 = 6;\n          pbVar21 = (byte *)0x2a4fde;\n          do {\n            if (iVar17 == 0) break;\n            iVar17 = iVar17 + -1;\n            bVar24 = *pbVar20 < *pbVar21;\n            bVar25 = *pbVar20 == *pbVar21;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          } while (bVar25);\n          if ((!bVar24 && !bVar25) == bVar24) {\n            this->orphan_handling_enum_ = ORPHAN_ERROR;\n          }\n        }" { (expression_statement "iVar17 = 6;" (assignment_expression "iVar17 = 6" identifier = number_literal) ;) (expression_statement "pbVar21 = (byte *)0x2a4fde;" (assignment_expression "pbVar21 = (byte *)0x2a4fde" identifier = (cast_expression "(byte *)0x2a4fde" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n            if (iVar17 == 0) break;\n            iVar17 = iVar17 + -1;\n            bVar24 = *pbVar20 < *pbVar21;\n            bVar25 = *pbVar20 == *pbVar21;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          } while (bVar25);" do (compound_statement "{\n            if (iVar17 == 0) break;\n            iVar17 = iVar17 + -1;\n            bVar24 = *pbVar20 < *pbVar21;\n            bVar25 = *pbVar20 == *pbVar21;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;\n          }" { (if_statement "if (iVar17 == 0) break;" if (parenthesized_expression "(iVar17 == 0)" ( (binary_expression "iVar17 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar17 = iVar17 + -1;" (assignment_expression "iVar17 = iVar17 + -1" identifier = (binary_expression "iVar17 + -1" identifier + number_literal)) ;) (expression_statement "bVar24 = *pbVar20 < *pbVar21;" (assignment_expression "bVar24 = *pbVar20 < *pbVar21" identifier = (binary_expression "*pbVar20 < *pbVar21" (pointer_expression "*pbVar20" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar25 = *pbVar20 == *pbVar21;" (assignment_expression "bVar25 = *pbVar20 == *pbVar21" identifier = (binary_expression "*pbVar20 == *pbVar21" (pointer_expression "*pbVar20" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1" identifier = (binary_expression "pbVar20 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar26 * -2" identifier + (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (uint)bVar26 * -2 + 1" identifier = (binary_expression "pbVar21 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar21 + (uint)bVar26 * -2" identifier + (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (if_statement "if ((!bVar24 && !bVar25) == bVar24) {\n            this->orphan_handling_enum_ = ORPHAN_ERROR;\n          }" if (parenthesized_expression "((!bVar24 && !bVar25) == bVar24)" ( (binary_expression "(!bVar24 && !bVar25) == bVar24" (parenthesized_expression "(!bVar24 && !bVar25)" ( (binary_expression "!bVar24 && !bVar25" (unary_expression "!bVar24" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) == identifier) )) (compound_statement "{\n            this->orphan_handling_enum_ = ORPHAN_ERROR;\n          }" { (expression_statement "this->orphan_handling_enum_ = ORPHAN_ERROR;" (assignment_expression "this->orphan_handling_enum_ = ORPHAN_ERROR" (field_expression "this->orphan_handling_enum_" identifier -> field_identifier) = identifier) ;) })) }))) }))) }))) })) (if_statement "if (((this->print_map_).value != false) && ((this->Map_).user_set_via_option == false)) {\n    (this->Map_).user_set_via_option = true;\n    (this->Map_).value = "-";\n  }" if (parenthesized_expression "(((this->print_map_).value != false) && ((this->Map_).user_set_via_option == false))" ( (binary_expression "((this->print_map_).value != false) && ((this->Map_).user_set_via_option == false)" (parenthesized_expression "((this->print_map_).value != false)" ( (binary_expression "(this->print_map_).value != false" (field_expression "(this->print_map_).value" (parenthesized_expression "(this->print_map_)" ( (field_expression "this->print_map_" identifier -> field_identifier) )) . field_identifier) != false) )) && (parenthesized_expression "((this->Map_).user_set_via_option == false)" ( (binary_expression "(this->Map_).user_set_via_option == false" (field_expression "(this->Map_).user_set_via_option" (parenthesized_expression "(this->Map_)" ( (field_expression "this->Map_" identifier -> field_identifier) )) . field_identifier) == false) ))) )) (compound_statement "{\n    (this->Map_).user_set_via_option = true;\n    (this->Map_).value = "-";\n  }" { (expression_statement "(this->Map_).user_set_via_option = true;" (assignment_expression "(this->Map_).user_set_via_option = true" (field_expression "(this->Map_).user_set_via_option" (parenthesized_expression "(this->Map_)" ( (field_expression "this->Map_" identifier -> field_identifier) )) . field_identifier) = true) ;) (expression_statement "(this->Map_).value = "-";" (assignment_expression "(this->Map_).value = "-"" (field_expression "(this->Map_).value" (parenthesized_expression "(this->Map_)" ( (field_expression "this->Map_" identifier -> field_identifier) )) . field_identifier) = (string_literal ""-"" " string_content ")) ;) })) (if_statement "if (((this->nmagic_).value != false) || ((this->omagic_).value != false)) {\n    this->static_ = true;\n  }" if (parenthesized_expression "(((this->nmagic_).value != false) || ((this->omagic_).value != false))" ( (binary_expression "((this->nmagic_).value != false) || ((this->omagic_).value != false)" (parenthesized_expression "((this->nmagic_).value != false)" ( (binary_expression "(this->nmagic_).value != false" (field_expression "(this->nmagic_).value" (parenthesized_expression "(this->nmagic_)" ( (field_expression "this->nmagic_" identifier -> field_identifier) )) . field_identifier) != false) )) || (parenthesized_expression "((this->omagic_).value != false)" ( (binary_expression "(this->omagic_).value != false" (field_expression "(this->omagic_).value" (parenthesized_expression "(this->omagic_)" ( (field_expression "this->omagic_" identifier -> field_identifier) )) . field_identifier) != false) ))) )) (compound_statement "{\n    this->static_ = true;\n  }" { (expression_statement "this->static_ = true;" (assignment_expression "this->static_ = true" (field_expression "this->static_" identifier -> field_identifier) = true) ;) })) (expression_statement "iVar17 = (this->thread_count_).value;" (assignment_expression "iVar17 = (this->thread_count_).value" identifier = (field_expression "(this->thread_count_).value" (parenthesized_expression "(this->thread_count_)" ( (field_expression "this->thread_count_" identifier -> field_identifier) )) . field_identifier)) ;) (if_statement "if (0 < iVar17) {\n    if ((this->thread_count_initial_).value == 0) {\n      (this->thread_count_initial_).value = iVar17;\n    }\n    if ((this->thread_count_middle_).value == 0) {\n      (this->thread_count_middle_).value = iVar17;\n    }\n    if ((this->thread_count_final_).value == 0) {\n      (this->thread_count_final_).value = iVar17;\n    }\n  }" if (parenthesized_expression "(0 < iVar17)" ( (binary_expression "0 < iVar17" number_literal < identifier) )) (compound_statement "{\n    if ((this->thread_count_initial_).value == 0) {\n      (this->thread_count_initial_).value = iVar17;\n    }\n    if ((this->thread_count_middle_).value == 0) {\n      (this->thread_count_middle_).value = iVar17;\n    }\n    if ((this->thread_count_final_).value == 0) {\n      (this->thread_count_final_).value = iVar17;\n    }\n  }" { (if_statement "if ((this->thread_count_initial_).value == 0) {\n      (this->thread_count_initial_).value = iVar17;\n    }" if (parenthesized_expression "((this->thread_count_initial_).value == 0)" ( (binary_expression "(this->thread_count_initial_).value == 0" (field_expression "(this->thread_count_initial_).value" (parenthesized_expression "(this->thread_count_initial_)" ( (field_expression "this->thread_count_initial_" identifier -> field_identifier) )) . field_identifier) == number_literal) )) (compound_statement "{\n      (this->thread_count_initial_).value = iVar17;\n    }" { (expression_statement "(this->thread_count_initial_).value = iVar17;" (assignment_expression "(this->thread_count_initial_).value = iVar17" (field_expression "(this->thread_count_initial_).value" (parenthesized_expression "(this->thread_count_initial_)" ( (field_expression "this->thread_count_initial_" identifier -> field_identifier) )) . field_identifier) = identifier) ;) })) (if_statement "if ((this->thread_count_middle_).value == 0) {\n      (this->thread_count_middle_).value = iVar17;\n    }" if (parenthesized_expression "((this->thread_count_middle_).value == 0)" ( (binary_expression "(this->thread_count_middle_).value == 0" (field_expression "(this->thread_count_middle_).value" (parenthesized_expression "(this->thread_count_middle_)" ( (field_expression "this->thread_count_middle_" identifier -> field_identifier) )) . field_identifier) == number_literal) )) (compound_statement "{\n      (this->thread_count_middle_).value = iVar17;\n    }" { (expression_statement "(this->thread_count_middle_).value = iVar17;" (assignment_expression "(this->thread_count_middle_).value = iVar17" (field_expression "(this->thread_count_middle_).value" (parenthesized_expression "(this->thread_count_middle_)" ( (field_expression "this->thread_count_middle_" identifier -> field_identifier) )) . field_identifier) = identifier) ;) })) (if_statement "if ((this->thread_count_final_).value == 0) {\n      (this->thread_count_final_).value = iVar17;\n    }" if (parenthesized_expression "((this->thread_count_final_).value == 0)" ( (binary_expression "(this->thread_count_final_).value == 0" (field_expression "(this->thread_count_final_).value" (parenthesized_expression "(this->thread_count_final_)" ( (field_expression "this->thread_count_final_" identifier -> field_identifier) )) . field_identifier) == number_literal) )) (compound_statement "{\n      (this->thread_count_final_).value = iVar17;\n    }" { (expression_statement "(this->thread_count_final_).value = iVar17;" (assignment_expression "(this->thread_count_final_).value = iVar17" (field_expression "(this->thread_count_final_).value" (parenthesized_expression "(this->thread_count_final_)" ( (field_expression "this->thread_count_final_" identifier -> field_identifier) )) . field_identifier) = identifier) ;) })) })) (expression_statement "libpath.field_2._M_local_buf[0] = '\0';" (assignment_expression "libpath.field_2._M_local_buf[0] = '\0'" (subscript_expression "libpath.field_2._M_local_buf[0]" (field_expression "libpath.field_2._M_local_buf" (field_expression "libpath.field_2" identifier . field_identifier) . field_identifier) [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "paVar1 = &libpath.field_2;" (assignment_expression "paVar1 = &libpath.field_2" identifier = (pointer_expression "&libpath.field_2" & (field_expression "libpath.field_2" identifier . field_identifier))) ;) (expression_statement "libpath._M_string_length = 0;" (assignment_expression "libpath._M_string_length = 0" (field_expression "libpath._M_string_length" identifier . field_identifier) = number_literal) ;) (expression_statement "libpath._M_dataplus._M_p = (pointer)paVar1;" (assignment_expression "libpath._M_dataplus._M_p = (pointer)paVar1" (field_expression "libpath._M_dataplus._M_p" (field_expression "libpath._M_dataplus" identifier . field_identifier) . field_identifier) = (cast_expression "(pointer)paVar1" ( (type_descriptor "pointer" type_identifier) ) identifier)) ;) (if_statement "if ((this->Y_).user_set_via_option == false) {\n    if ((this->nostdlib_).value == false) {\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e81b5 to 000e81b9 has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      paVar5 = &local_1a4.name_.field_2;\n      local_1a4.name_._M_dataplus._M_p = (pointer)paVar5;\n                    /* try { // try from 000e81e2 to 000e81e6 has its CatchHandler @ 000e8ba5 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      local_1a4.put_in_sysroot_ = true;\n      local_1a4.is_in_sysroot_ = false;\n      if (local_1a4.name_._M_string_length == 0) {\n                    /* try { // try from 000e8607 to 000e860b has its CatchHandler @ 000e8b3e */\n        std::string::_M_replace((string *)&local_1a4,0,0,".",1);\n      }\n      this_00 = &(this->library_path_).value;\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e8623 to 000e8627 has its CatchHandler @ 000e8b45 */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_1a4);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e823f to 000e8243 has its CatchHandler @ 000e8b45 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_1a4.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_1a4.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_1a4.name_._M_dataplus._M_p != paVar5) {\n        operator_delete(local_1a4.name_._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e82c9 to 000e82cd has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      paVar5 = &local_188.name_.field_2;\n      local_188.name_._M_dataplus._M_p = (pointer)paVar5;\n                    /* try { // try from 000e82f6 to 000e82fa has its CatchHandler @ 000e8b7d */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      local_188.put_in_sysroot_ = true;\n      local_188.is_in_sysroot_ = false;\n      if (local_188.name_._M_string_length == 0) {\n                    /* try { // try from 000e87a7 to 000e87ab has its CatchHandler @ 000e8b68 */\n        std::string::_M_replace((string *)&local_188,0,0,".",1);\n      }\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e883b to 000e883f has its CatchHandler @ 000e8b6f */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_188);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e8345 to 000e8349 has its CatchHandler @ 000e8b6f */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_188.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_188.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_188.name_._M_dataplus._M_p != paVar5) {\n        operator_delete(local_188.name_._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e83cf to 000e83d3 has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      paVar5 = &local_16c.name_.field_2;\n      local_16c.name_._M_dataplus._M_p = (pointer)paVar5;\n                    /* try { // try from 000e83fc to 000e8400 has its CatchHandler @ 000e8b76 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      local_16c.put_in_sysroot_ = true;\n      local_16c.is_in_sysroot_ = false;\n      if (local_16c.name_._M_string_length == 0) {\n                    /* try { // try from 000e87cf to 000e87d3 has its CatchHandler @ 000e8b61 */\n        std::string::_M_replace((string *)&local_16c,0,0,".",1);\n      }\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e881b to 000e881f has its CatchHandler @ 000e8b4c */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_16c);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e844b to 000e844f has its CatchHandler @ 000e8b4c */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_16c.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_16c.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_16c.name_._M_dataplus._M_p != paVar5) {\n        operator_delete(local_16c.name_._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e84d5 to 000e84d9 has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      line._M_dataplus._M_p = (pointer)&line.field_2;\n                    /* try { // try from 000e850e to 000e8512 has its CatchHandler @ 000e8b1b */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      if (line._M_string_length == 0) {\n                    /* try { // try from 000e87fc to 000e8800 has its CatchHandler @ 000e8b5a */\n        std::string::_M_replace((string *)&line,0,0,".",1);\n      }\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e8860 to 000e8864 has its CatchHandler @ 000e8b14 */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,(Search_directory *)&line);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e855d to 000e8561 has its CatchHandler @ 000e8b14 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = true;\n        (iVar7._M_current)->is_in_sysroot_ = false;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)line._M_dataplus._M_p != &line.field_2) {\n        operator_delete(line._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      goto LAB_000e7f08;\n    }\n  }\n  else {\n    pcVar15 = (this->Y_).value;\n    sVar13 = strlen(pcVar15);\n                    /* try { // try from 000e7ede to 000e7f8e has its CatchHandler @ 000e8b37 */\n    std::string::_M_replace((string *)&libpath,0,0,pcVar15,sVar13);\n    iVar17 = std::string::compare((string *)&libpath,0,2,"P,");\n    if (iVar17 == 0) {\n      sVar18 = libpath._M_string_length;\n      if (2 < libpath._M_string_length) {\n        sVar18 = 2;\n      }\n                    /* try { // try from 000e877d to 000e8781 has its CatchHandler @ 000e8b37 */\n      std::string::_M_erase((string *)&libpath,0,sVar18);\n    }\nLAB_000e7f08:\n    uVar19 = 0;\n    if (libpath._M_string_length != 0) {\n      do {\n        uVar14 = std::string::find((string *)&libpath,':',uVar19);\n        if ((uVar14 == 0xffffffff) || (uVar14 != uVar19)) {\n          if (libpath._M_string_length < uVar19) {\n                    /* WARNING: Subroutine does not return */\n            std::__throw_out_of_range_fmt("%s: __pos (which is %zu) > this->size() (which is %zu)");\n          }\n          line._M_dataplus._M_p = (pointer)&line.field_2;\n          std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n          _M_construct<char_const*>();\n          _in = (undefined **)&local_12c;\n                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */\n          std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n          _M_construct<char*>();\n          local_11c._0_1_ = true;\n          local_11c._1_1_ = false;\n          if (local_130 == 0) {\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            std::string::_M_replace((string *)&in,0,0,".",1);\n          }\n          iVar7._M_current =\n               (this->library_path_).value.\n               super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n               _M_impl._M_finish;\n          if (iVar7._M_current ==\n              (this->library_path_).value.\n              super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n              _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n            _M_realloc_insert<const_gold::Search_directory&>\n                      (&(this->library_path_).value,iVar7,(Search_directory *)&in);\n          }\n          else {\n            ((iVar7._M_current)->name_)._M_dataplus._M_p =\n                 (pointer)&((iVar7._M_current)->name_).field_2;\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n            _M_construct<char*>();\n            (iVar7._M_current)->put_in_sysroot_ = local_11c._0_1_;\n            (iVar7._M_current)->is_in_sysroot_ = local_11c._1_1_;\n            ppSVar3 = &(this->library_path_).value.\n                       super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                       ._M_impl._M_finish;\n            *ppSVar3 = *ppSVar3 + 1;\n          }\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)_in != &local_12c) {\n            operator_delete(_in);\n          }\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)line._M_dataplus._M_p != &line.field_2) {\n            operator_delete(line._M_dataplus._M_p);\n          }\n          if (uVar14 == 0xffffffff) break;\n        }\n        uVar19 = uVar14 + 1;\n      } while( true );\n    }\n  }" if (parenthesized_expression "((this->Y_).user_set_via_option == false)" ( (binary_expression "(this->Y_).user_set_via_option == false" (field_expression "(this->Y_).user_set_via_option" (parenthesized_expression "(this->Y_)" ( (field_expression "this->Y_" identifier -> field_identifier) )) . field_identifier) == false) )) (compound_statement "{\n    if ((this->nostdlib_).value == false) {\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e81b5 to 000e81b9 has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      paVar5 = &local_1a4.name_.field_2;\n      local_1a4.name_._M_dataplus._M_p = (pointer)paVar5;\n                    /* try { // try from 000e81e2 to 000e81e6 has its CatchHandler @ 000e8ba5 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      local_1a4.put_in_sysroot_ = true;\n      local_1a4.is_in_sysroot_ = false;\n      if (local_1a4.name_._M_string_length == 0) {\n                    /* try { // try from 000e8607 to 000e860b has its CatchHandler @ 000e8b3e */\n        std::string::_M_replace((string *)&local_1a4,0,0,".",1);\n      }\n      this_00 = &(this->library_path_).value;\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e8623 to 000e8627 has its CatchHandler @ 000e8b45 */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_1a4);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e823f to 000e8243 has its CatchHandler @ 000e8b45 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_1a4.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_1a4.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_1a4.name_._M_dataplus._M_p != paVar5) {\n        operator_delete(local_1a4.name_._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e82c9 to 000e82cd has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      paVar5 = &local_188.name_.field_2;\n      local_188.name_._M_dataplus._M_p = (pointer)paVar5;\n                    /* try { // try from 000e82f6 to 000e82fa has its CatchHandler @ 000e8b7d */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      local_188.put_in_sysroot_ = true;\n      local_188.is_in_sysroot_ = false;\n      if (local_188.name_._M_string_length == 0) {\n                    /* try { // try from 000e87a7 to 000e87ab has its CatchHandler @ 000e8b68 */\n        std::string::_M_replace((string *)&local_188,0,0,".",1);\n      }\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e883b to 000e883f has its CatchHandler @ 000e8b6f */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_188);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e8345 to 000e8349 has its CatchHandler @ 000e8b6f */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_188.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_188.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_188.name_._M_dataplus._M_p != paVar5) {\n        operator_delete(local_188.name_._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e83cf to 000e83d3 has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      paVar5 = &local_16c.name_.field_2;\n      local_16c.name_._M_dataplus._M_p = (pointer)paVar5;\n                    /* try { // try from 000e83fc to 000e8400 has its CatchHandler @ 000e8b76 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      local_16c.put_in_sysroot_ = true;\n      local_16c.is_in_sysroot_ = false;\n      if (local_16c.name_._M_string_length == 0) {\n                    /* try { // try from 000e87cf to 000e87d3 has its CatchHandler @ 000e8b61 */\n        std::string::_M_replace((string *)&local_16c,0,0,".",1);\n      }\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e881b to 000e881f has its CatchHandler @ 000e8b4c */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_16c);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e844b to 000e844f has its CatchHandler @ 000e8b4c */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_16c.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_16c.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_16c.name_._M_dataplus._M_p != paVar5) {\n        operator_delete(local_16c.name_._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e84d5 to 000e84d9 has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      line._M_dataplus._M_p = (pointer)&line.field_2;\n                    /* try { // try from 000e850e to 000e8512 has its CatchHandler @ 000e8b1b */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      if (line._M_string_length == 0) {\n                    /* try { // try from 000e87fc to 000e8800 has its CatchHandler @ 000e8b5a */\n        std::string::_M_replace((string *)&line,0,0,".",1);\n      }\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e8860 to 000e8864 has its CatchHandler @ 000e8b14 */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,(Search_directory *)&line);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e855d to 000e8561 has its CatchHandler @ 000e8b14 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = true;\n        (iVar7._M_current)->is_in_sysroot_ = false;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)line._M_dataplus._M_p != &line.field_2) {\n        operator_delete(line._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      goto LAB_000e7f08;\n    }\n  }" { (if_statement "if ((this->nostdlib_).value == false) {\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e81b5 to 000e81b9 has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      paVar5 = &local_1a4.name_.field_2;\n      local_1a4.name_._M_dataplus._M_p = (pointer)paVar5;\n                    /* try { // try from 000e81e2 to 000e81e6 has its CatchHandler @ 000e8ba5 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      local_1a4.put_in_sysroot_ = true;\n      local_1a4.is_in_sysroot_ = false;\n      if (local_1a4.name_._M_string_length == 0) {\n                    /* try { // try from 000e8607 to 000e860b has its CatchHandler @ 000e8b3e */\n        std::string::_M_replace((string *)&local_1a4,0,0,".",1);\n      }\n      this_00 = &(this->library_path_).value;\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e8623 to 000e8627 has its CatchHandler @ 000e8b45 */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_1a4);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e823f to 000e8243 has its CatchHandler @ 000e8b45 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_1a4.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_1a4.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_1a4.name_._M_dataplus._M_p != paVar5) {\n        operator_delete(local_1a4.name_._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e82c9 to 000e82cd has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      paVar5 = &local_188.name_.field_2;\n      local_188.name_._M_dataplus._M_p = (pointer)paVar5;\n                    /* try { // try from 000e82f6 to 000e82fa has its CatchHandler @ 000e8b7d */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      local_188.put_in_sysroot_ = true;\n      local_188.is_in_sysroot_ = false;\n      if (local_188.name_._M_string_length == 0) {\n                    /* try { // try from 000e87a7 to 000e87ab has its CatchHandler @ 000e8b68 */\n        std::string::_M_replace((string *)&local_188,0,0,".",1);\n      }\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e883b to 000e883f has its CatchHandler @ 000e8b6f */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_188);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e8345 to 000e8349 has its CatchHandler @ 000e8b6f */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_188.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_188.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_188.name_._M_dataplus._M_p != paVar5) {\n        operator_delete(local_188.name_._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e83cf to 000e83d3 has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      paVar5 = &local_16c.name_.field_2;\n      local_16c.name_._M_dataplus._M_p = (pointer)paVar5;\n                    /* try { // try from 000e83fc to 000e8400 has its CatchHandler @ 000e8b76 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      local_16c.put_in_sysroot_ = true;\n      local_16c.is_in_sysroot_ = false;\n      if (local_16c.name_._M_string_length == 0) {\n                    /* try { // try from 000e87cf to 000e87d3 has its CatchHandler @ 000e8b61 */\n        std::string::_M_replace((string *)&local_16c,0,0,".",1);\n      }\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e881b to 000e881f has its CatchHandler @ 000e8b4c */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_16c);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e844b to 000e844f has its CatchHandler @ 000e8b4c */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_16c.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_16c.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_16c.name_._M_dataplus._M_p != paVar5) {\n        operator_delete(local_16c.name_._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e84d5 to 000e84d9 has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      line._M_dataplus._M_p = (pointer)&line.field_2;\n                    /* try { // try from 000e850e to 000e8512 has its CatchHandler @ 000e8b1b */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      if (line._M_string_length == 0) {\n                    /* try { // try from 000e87fc to 000e8800 has its CatchHandler @ 000e8b5a */\n        std::string::_M_replace((string *)&line,0,0,".",1);\n      }\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e8860 to 000e8864 has its CatchHandler @ 000e8b14 */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,(Search_directory *)&line);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e855d to 000e8561 has its CatchHandler @ 000e8b14 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = true;\n        (iVar7._M_current)->is_in_sysroot_ = false;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)line._M_dataplus._M_p != &line.field_2) {\n        operator_delete(line._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      goto LAB_000e7f08;\n    }" if (parenthesized_expression "((this->nostdlib_).value == false)" ( (binary_expression "(this->nostdlib_).value == false" (field_expression "(this->nostdlib_).value" (parenthesized_expression "(this->nostdlib_)" ( (field_expression "this->nostdlib_" identifier -> field_identifier) )) . field_identifier) == false) )) (compound_statement "{\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e81b5 to 000e81b9 has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      paVar5 = &local_1a4.name_.field_2;\n      local_1a4.name_._M_dataplus._M_p = (pointer)paVar5;\n                    /* try { // try from 000e81e2 to 000e81e6 has its CatchHandler @ 000e8ba5 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      local_1a4.put_in_sysroot_ = true;\n      local_1a4.is_in_sysroot_ = false;\n      if (local_1a4.name_._M_string_length == 0) {\n                    /* try { // try from 000e8607 to 000e860b has its CatchHandler @ 000e8b3e */\n        std::string::_M_replace((string *)&local_1a4,0,0,".",1);\n      }\n      this_00 = &(this->library_path_).value;\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e8623 to 000e8627 has its CatchHandler @ 000e8b45 */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_1a4);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e823f to 000e8243 has its CatchHandler @ 000e8b45 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_1a4.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_1a4.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_1a4.name_._M_dataplus._M_p != paVar5) {\n        operator_delete(local_1a4.name_._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e82c9 to 000e82cd has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      paVar5 = &local_188.name_.field_2;\n      local_188.name_._M_dataplus._M_p = (pointer)paVar5;\n                    /* try { // try from 000e82f6 to 000e82fa has its CatchHandler @ 000e8b7d */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      local_188.put_in_sysroot_ = true;\n      local_188.is_in_sysroot_ = false;\n      if (local_188.name_._M_string_length == 0) {\n                    /* try { // try from 000e87a7 to 000e87ab has its CatchHandler @ 000e8b68 */\n        std::string::_M_replace((string *)&local_188,0,0,".",1);\n      }\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e883b to 000e883f has its CatchHandler @ 000e8b6f */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_188);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e8345 to 000e8349 has its CatchHandler @ 000e8b6f */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_188.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_188.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_188.name_._M_dataplus._M_p != paVar5) {\n        operator_delete(local_188.name_._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e83cf to 000e83d3 has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      paVar5 = &local_16c.name_.field_2;\n      local_16c.name_._M_dataplus._M_p = (pointer)paVar5;\n                    /* try { // try from 000e83fc to 000e8400 has its CatchHandler @ 000e8b76 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      local_16c.put_in_sysroot_ = true;\n      local_16c.is_in_sysroot_ = false;\n      if (local_16c.name_._M_string_length == 0) {\n                    /* try { // try from 000e87cf to 000e87d3 has its CatchHandler @ 000e8b61 */\n        std::string::_M_replace((string *)&local_16c,0,0,".",1);\n      }\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e881b to 000e881f has its CatchHandler @ 000e8b4c */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_16c);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e844b to 000e844f has its CatchHandler @ 000e8b4c */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_16c.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_16c.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_16c.name_._M_dataplus._M_p != paVar5) {\n        operator_delete(local_16c.name_._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      _in = (undefined **)&local_12c;\n                    /* try { // try from 000e84d5 to 000e84d9 has its CatchHandler @ 000e8b37 */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();\n      line._M_dataplus._M_p = (pointer)&line.field_2;\n                    /* try { // try from 000e850e to 000e8512 has its CatchHandler @ 000e8b1b */\n      std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();\n      if (line._M_string_length == 0) {\n                    /* try { // try from 000e87fc to 000e8800 has its CatchHandler @ 000e8b5a */\n        std::string::_M_replace((string *)&line,0,0,".",1);\n      }\n      iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n           _M_impl._M_finish;\n      if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e8860 to 000e8864 has its CatchHandler @ 000e8b14 */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,(Search_directory *)&line);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e855d to 000e8561 has its CatchHandler @ 000e8b14 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = true;\n        (iVar7._M_current)->is_in_sysroot_ = false;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)line._M_dataplus._M_p != &line.field_2) {\n        operator_delete(line._M_dataplus._M_p);\n      }\n      if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }\n      goto LAB_000e7f08;\n    }" { (expression_statement "_in = (undefined **)&local_12c;" (assignment_expression "_in = (undefined **)&local_12c" identifier = (cast_expression "(undefined **)&local_12c" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&local_12c" & identifier))) ;) comment (labeled_statement "std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();" statement_identifier (ERROR "::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>:" : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > :) : (expression_statement "_M_construct<char_const*>();" (binary_expression "_M_construct<char_const" identifier < identifier) (ERROR "*>()" * > ( )) ;)) (expression_statement "paVar5 = &local_1a4.name_.field_2;" (assignment_expression "paVar5 = &local_1a4.name_.field_2" identifier = (pointer_expression "&local_1a4.name_.field_2" & (field_expression "local_1a4.name_.field_2" (field_expression "local_1a4.name_" identifier . field_identifier) . field_identifier))) ;) (expression_statement "local_1a4.name_._M_dataplus._M_p = (pointer)paVar5;" (assignment_expression "local_1a4.name_._M_dataplus._M_p = (pointer)paVar5" (field_expression "local_1a4.name_._M_dataplus._M_p" (field_expression "local_1a4.name_._M_dataplus" (field_expression "local_1a4.name_" identifier . field_identifier) . field_identifier) . field_identifier) = (cast_expression "(pointer)paVar5" ( (type_descriptor "pointer" type_identifier) ) identifier)) ;) comment (labeled_statement "std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();" statement_identifier (ERROR "::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>:" : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > :) : (expression_statement "_M_construct<char*>();" (binary_expression "_M_construct<char" identifier < identifier) (ERROR "*>()" * > ( )) ;)) (expression_statement "local_1a4.put_in_sysroot_ = true;" (assignment_expression "local_1a4.put_in_sysroot_ = true" (field_expression "local_1a4.put_in_sysroot_" identifier . field_identifier) = true) ;) (expression_statement "local_1a4.is_in_sysroot_ = false;" (assignment_expression "local_1a4.is_in_sysroot_ = false" (field_expression "local_1a4.is_in_sysroot_" identifier . field_identifier) = false) ;) (if_statement "if (local_1a4.name_._M_string_length == 0) {\n                    /* try { // try from 000e8607 to 000e860b has its CatchHandler @ 000e8b3e */\n        std::string::_M_replace((string *)&local_1a4,0,0,".",1);\n      }" if (parenthesized_expression "(local_1a4.name_._M_string_length == 0)" ( (binary_expression "local_1a4.name_._M_string_length == 0" (field_expression "local_1a4.name_._M_string_length" (field_expression "local_1a4.name_" identifier . field_identifier) . field_identifier) == number_literal) )) (compound_statement "{\n                    /* try { // try from 000e8607 to 000e860b has its CatchHandler @ 000e8b3e */\n        std::string::_M_replace((string *)&local_1a4,0,0,".",1);\n      }" { comment (labeled_statement "std::string::_M_replace((string *)&local_1a4,0,0,".",1);" statement_identifier : (ERROR ":" :) (labeled_statement "string::_M_replace((string *)&local_1a4,0,0,".",1);" statement_identifier : (ERROR ":" :) (expression_statement "_M_replace((string *)&local_1a4,0,0,".",1);" (call_expression "_M_replace((string *)&local_1a4,0,0,".",1)" identifier (argument_list "((string *)&local_1a4,0,0,".",1)" ( (cast_expression "(string *)&local_1a4" ( (type_descriptor "string *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_1a4" & identifier)) , number_literal , number_literal , (string_literal ""."" " string_content ") , number_literal ))) ;))) })) (expression_statement "this_00 = &(this->library_path_).value;" (assignment_expression "this_00 = &(this->library_path_).value" identifier = (pointer_expression "&(this->library_path_).value" & (field_expression "(this->library_path_).value" (parenthesized_expression "(this->library_path_)" ( (field_expression "this->library_path_" identifier -> field_identifier) )) . field_identifier))) ;) (ERROR "iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::" (comma_expression "iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std" (assignment_expression "iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold" (field_expression "iVar7._M_current" identifier . field_identifier) = (binary_expression "(this->library_path_).value.\n           super__Vector_base<gold" (field_expression "(this->library_path_).value.\n           super__Vector_base" (field_expression "(this->library_path_).value" (parenthesized_expression "(this->library_path_)" ( (field_expression "this->library_path_" identifier -> field_identifier) )) . field_identifier) . field_identifier) < identifier)) (ERROR "::Search_directory" : : identifier) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Search_directory>_>.\n           _M_impl._M_finish;" (field_expression "Search_directory>_>.\n           _M_impl._M_finish" (field_expression "Search_directory>_>.\n           _M_impl" (binary_expression "Search_directory>_" identifier > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (if_statement "if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e8623 to 000e8627 has its CatchHandler @ 000e8b45 */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_1a4);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e823f to 000e8243 has its CatchHandler @ 000e8b45 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_1a4.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_1a4.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }" if (parenthesized_expression "(iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage)" ( (ERROR "iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::" (comma_expression "iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std" (binary_expression "iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold" (field_expression "iVar7._M_current" identifier . field_identifier) == (binary_expression "(this->library_path_).value.\n          super__Vector_base<gold" (field_expression "(this->library_path_).value.\n          super__Vector_base" (field_expression "(this->library_path_).value" (parenthesized_expression "(this->library_path_)" ( (field_expression "this->library_path_" identifier -> field_identifier) )) . field_identifier) . field_identifier) < identifier)) (ERROR "::Search_directory" : : identifier) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : :) (field_expression "Search_directory>_>.\n          _M_impl._M_end_of_storage" (field_expression "Search_directory>_>.\n          _M_impl" (binary_expression "Search_directory>_" identifier > identifier) (ERROR ">" >) . field_identifier) . field_identifier) )) (compound_statement "{\n                    /* try { // try from 000e8623 to 000e8627 has its CatchHandler @ 000e8b45 */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_1a4);\n      }" { comment (labeled_statement "std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_1a4);" statement_identifier (ERROR "::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold:" : : (binary_expression "vector<gold" identifier < identifier) : : (comma_expression "Search_directory,_std" identifier , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : : (binary_expression "Search_directory>_" identifier > identifier) > : : (binary_expression "_M_realloc_insert<const_gold" identifier < identifier) :) : (expression_statement "Search_directory&>(this_00,iVar7,&local_1a4);" (binary_expression "Search_directory&>(this_00,iVar7,&local_1a4)" identifier (ERROR "&" &) > (parenthesized_expression "(this_00,iVar7,&local_1a4)" ( (comma_expression "this_00,iVar7,&local_1a4" identifier , (comma_expression "iVar7,&local_1a4" identifier , (pointer_expression "&local_1a4" & identifier))) ))) ;)) }) (else_clause "else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e823f to 000e8243 has its CatchHandler @ 000e8b45 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_1a4.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_1a4.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }" else (compound_statement "{\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e823f to 000e8243 has its CatchHandler @ 000e8b45 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_1a4.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_1a4.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }" { (expression_statement "((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;" (assignment_expression "((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2" (field_expression "((iVar7._M_current)->name_)._M_dataplus._M_p" (field_expression "((iVar7._M_current)->name_)._M_dataplus" (parenthesized_expression "((iVar7._M_current)->name_)" ( (field_expression "(iVar7._M_current)->name_" (parenthesized_expression "(iVar7._M_current)" ( (field_expression "iVar7._M_current" identifier . field_identifier) )) -> field_identifier) )) . field_identifier) . field_identifier) = (binary_expression "(pointer)&((iVar7._M_current)->name_).field_2" (parenthesized_expression "(pointer)" ( identifier )) & (field_expression "((iVar7._M_current)->name_).field_2" (parenthesized_expression "((iVar7._M_current)->name_)" ( (field_expression "(iVar7._M_current)->name_" (parenthesized_expression "(iVar7._M_current)" ( (field_expression "iVar7._M_current" identifier . field_identifier) )) -> field_identifier) )) . field_identifier))) ;) comment (labeled_statement "std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();" statement_identifier (ERROR "::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>:" : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > :) : (expression_statement "_M_construct<char*>();" (binary_expression "_M_construct<char" identifier < identifier) (ERROR "*>()" * > ( )) ;)) (expression_statement "(iVar7._M_current)->put_in_sysroot_ = local_1a4.put_in_sysroot_;" (assignment_expression "(iVar7._M_current)->put_in_sysroot_ = local_1a4.put_in_sysroot_" (field_expression "(iVar7._M_current)->put_in_sysroot_" (parenthesized_expression "(iVar7._M_current)" ( (field_expression "iVar7._M_current" identifier . field_identifier) )) -> field_identifier) = (field_expression "local_1a4.put_in_sysroot_" identifier . field_identifier)) ;) (expression_statement "(iVar7._M_current)->is_in_sysroot_ = local_1a4.is_in_sysroot_;" (assignment_expression "(iVar7._M_current)->is_in_sysroot_ = local_1a4.is_in_sysroot_" (field_expression "(iVar7._M_current)->is_in_sysroot_" (parenthesized_expression "(iVar7._M_current)" ( (field_expression "iVar7._M_current" identifier . field_identifier) )) -> field_identifier) = (field_expression "local_1a4.is_in_sysroot_" identifier . field_identifier)) ;) (ERROR "ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::" (comma_expression "ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std" (assignment_expression "ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold" identifier = (binary_expression "&(this->library_path_).value.\n                   super__Vector_base<gold" (pointer_expression "&(this->library_path_).value.\n                   super__Vector_base" & (field_expression "(this->library_path_).value.\n                   super__Vector_base" (field_expression "(this->library_path_).value" (parenthesized_expression "(this->library_path_)" ( (field_expression "this->library_path_" identifier -> field_identifier) )) . field_identifier) . field_identifier)) < identifier)) (ERROR "::Search_directory" : : identifier) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Search_directory>_>\n                   ._M_impl._M_finish;" (field_expression "Search_directory>_>\n                   ._M_impl._M_finish" (field_expression "Search_directory>_>\n                   ._M_impl" (binary_expression "Search_directory>_" identifier > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "*ppSVar3 = *ppSVar3 + 1;" (assignment_expression "*ppSVar3 = *ppSVar3 + 1" (pointer_expression "*ppSVar3" * identifier) = (binary_expression "*ppSVar3 + 1" (pointer_expression "*ppSVar3" * identifier) + number_literal)) ;) }))) (if_statement "if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_1a4.name_._M_dataplus._M_p != paVar5) {\n        operator_delete(local_1a4.name_._M_dataplus._M_p);\n      }" if (parenthesized_expression "((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_1a4.name_._M_dataplus._M_p != paVar5)" ( (parenthesized_expression "(anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_1a4.name_._M_dataplus._M_p != paVar5)" ( (ERROR "anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::" (comma_expression "anon_union_16_2_edb7204a_for_basic_string<char,_std" (binary_expression "anon_union_16_2_edb7204a_for_basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : :) (binary_expression "allocator<char>_>_9\n           *)local_1a4.name_._M_dataplus._M_p != paVar5" (binary_expression "allocator<char>_>_9\n           *)local_1a4.name_._M_dataplus._M_p" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (binary_expression "_9\n           *)local_1a4.name_._M_dataplus._M_p" identifier * (ERROR ")" )) (field_expression "local_1a4.name_._M_dataplus._M_p" (field_expression "local_1a4.name_._M_dataplus" (field_expression "local_1a4.name_" identifier . field_identifier) . field_identifier) . field_identifier))) != identifier) )) )) (compound_statement "{\n        operator_delete(local_1a4.name_._M_dataplus._M_p);\n      }" { (expression_statement "operator_delete(local_1a4.name_._M_dataplus._M_p);" (call_expression "operator_delete(local_1a4.name_._M_dataplus._M_p)" identifier (argument_list "(local_1a4.name_._M_dataplus._M_p)" ( (field_expression "local_1a4.name_._M_dataplus._M_p" (field_expression "local_1a4.name_._M_dataplus" (field_expression "local_1a4.name_" identifier . field_identifier) . field_identifier) . field_identifier) ))) ;) })) (if_statement "if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }" if (parenthesized_expression "((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c)" ( (parenthesized_expression "(anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c)" ( (ERROR "anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::" (comma_expression "anon_union_16_2_edb7204a_for_basic_string<char,_std" (binary_expression "anon_union_16_2_edb7204a_for_basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : :) (binary_expression "allocator<char>_>_9\n           *)_in != &local_12c" (binary_expression "allocator<char>_>_9\n           *)_in" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (binary_expression "_9\n           *)_in" identifier * (ERROR ")" )) identifier)) != (pointer_expression "&local_12c" & identifier)) )) )) (compound_statement "{\n        operator_delete(_in);\n      }" { (expression_statement "operator_delete(_in);" (call_expression "operator_delete(_in)" identifier (argument_list "(_in)" ( identifier ))) ;) })) (expression_statement "_in = (undefined **)&local_12c;" (assignment_expression "_in = (undefined **)&local_12c" identifier = (cast_expression "(undefined **)&local_12c" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&local_12c" & identifier))) ;) comment (labeled_statement "std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();" statement_identifier (ERROR "::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>:" : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > :) : (expression_statement "_M_construct<char_const*>();" (binary_expression "_M_construct<char_const" identifier < identifier) (ERROR "*>()" * > ( )) ;)) (expression_statement "paVar5 = &local_188.name_.field_2;" (assignment_expression "paVar5 = &local_188.name_.field_2" identifier = (pointer_expression "&local_188.name_.field_2" & (field_expression "local_188.name_.field_2" (field_expression "local_188.name_" identifier . field_identifier) . field_identifier))) ;) (expression_statement "local_188.name_._M_dataplus._M_p = (pointer)paVar5;" (assignment_expression "local_188.name_._M_dataplus._M_p = (pointer)paVar5" (field_expression "local_188.name_._M_dataplus._M_p" (field_expression "local_188.name_._M_dataplus" (field_expression "local_188.name_" identifier . field_identifier) . field_identifier) . field_identifier) = (cast_expression "(pointer)paVar5" ( (type_descriptor "pointer" type_identifier) ) identifier)) ;) comment (labeled_statement "std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();" statement_identifier (ERROR "::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>:" : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > :) : (expression_statement "_M_construct<char*>();" (binary_expression "_M_construct<char" identifier < identifier) (ERROR "*>()" * > ( )) ;)) (expression_statement "local_188.put_in_sysroot_ = true;" (assignment_expression "local_188.put_in_sysroot_ = true" (field_expression "local_188.put_in_sysroot_" identifier . field_identifier) = true) ;) (expression_statement "local_188.is_in_sysroot_ = false;" (assignment_expression "local_188.is_in_sysroot_ = false" (field_expression "local_188.is_in_sysroot_" identifier . field_identifier) = false) ;) (if_statement "if (local_188.name_._M_string_length == 0) {\n                    /* try { // try from 000e87a7 to 000e87ab has its CatchHandler @ 000e8b68 */\n        std::string::_M_replace((string *)&local_188,0,0,".",1);\n      }" if (parenthesized_expression "(local_188.name_._M_string_length == 0)" ( (binary_expression "local_188.name_._M_string_length == 0" (field_expression "local_188.name_._M_string_length" (field_expression "local_188.name_" identifier . field_identifier) . field_identifier) == number_literal) )) (compound_statement "{\n                    /* try { // try from 000e87a7 to 000e87ab has its CatchHandler @ 000e8b68 */\n        std::string::_M_replace((string *)&local_188,0,0,".",1);\n      }" { comment (labeled_statement "std::string::_M_replace((string *)&local_188,0,0,".",1);" statement_identifier : (ERROR ":" :) (labeled_statement "string::_M_replace((string *)&local_188,0,0,".",1);" statement_identifier : (ERROR ":" :) (expression_statement "_M_replace((string *)&local_188,0,0,".",1);" (call_expression "_M_replace((string *)&local_188,0,0,".",1)" identifier (argument_list "((string *)&local_188,0,0,".",1)" ( (cast_expression "(string *)&local_188" ( (type_descriptor "string *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_188" & identifier)) , number_literal , number_literal , (string_literal ""."" " string_content ") , number_literal ))) ;))) })) (ERROR "iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::" (comma_expression "iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std" (assignment_expression "iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold" (field_expression "iVar7._M_current" identifier . field_identifier) = (binary_expression "(this->library_path_).value.\n           super__Vector_base<gold" (field_expression "(this->library_path_).value.\n           super__Vector_base" (field_expression "(this->library_path_).value" (parenthesized_expression "(this->library_path_)" ( (field_expression "this->library_path_" identifier -> field_identifier) )) . field_identifier) . field_identifier) < identifier)) (ERROR "::Search_directory" : : identifier) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Search_directory>_>.\n           _M_impl._M_finish;" (field_expression "Search_directory>_>.\n           _M_impl._M_finish" (field_expression "Search_directory>_>.\n           _M_impl" (binary_expression "Search_directory>_" identifier > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (if_statement "if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e883b to 000e883f has its CatchHandler @ 000e8b6f */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_188);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e8345 to 000e8349 has its CatchHandler @ 000e8b6f */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_188.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_188.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }" if (parenthesized_expression "(iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage)" ( (ERROR "iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::" (comma_expression "iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std" (binary_expression "iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold" (field_expression "iVar7._M_current" identifier . field_identifier) == (binary_expression "(this->library_path_).value.\n          super__Vector_base<gold" (field_expression "(this->library_path_).value.\n          super__Vector_base" (field_expression "(this->library_path_).value" (parenthesized_expression "(this->library_path_)" ( (field_expression "this->library_path_" identifier -> field_identifier) )) . field_identifier) . field_identifier) < identifier)) (ERROR "::Search_directory" : : identifier) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : :) (field_expression "Search_directory>_>.\n          _M_impl._M_end_of_storage" (field_expression "Search_directory>_>.\n          _M_impl" (binary_expression "Search_directory>_" identifier > identifier) (ERROR ">" >) . field_identifier) . field_identifier) )) (compound_statement "{\n                    /* try { // try from 000e883b to 000e883f has its CatchHandler @ 000e8b6f */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_188);\n      }" { comment (labeled_statement "std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_188);" statement_identifier (ERROR "::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold:" : : (binary_expression "vector<gold" identifier < identifier) : : (comma_expression "Search_directory,_std" identifier , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : : (binary_expression "Search_directory>_" identifier > identifier) > : : (binary_expression "_M_realloc_insert<const_gold" identifier < identifier) :) : (expression_statement "Search_directory&>(this_00,iVar7,&local_188);" (binary_expression "Search_directory&>(this_00,iVar7,&local_188)" identifier (ERROR "&" &) > (parenthesized_expression "(this_00,iVar7,&local_188)" ( (comma_expression "this_00,iVar7,&local_188" identifier , (comma_expression "iVar7,&local_188" identifier , (pointer_expression "&local_188" & identifier))) ))) ;)) }) (else_clause "else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e8345 to 000e8349 has its CatchHandler @ 000e8b6f */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_188.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_188.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }" else (compound_statement "{\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e8345 to 000e8349 has its CatchHandler @ 000e8b6f */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_188.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_188.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }" { (expression_statement "((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;" (assignment_expression "((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2" (field_expression "((iVar7._M_current)->name_)._M_dataplus._M_p" (field_expression "((iVar7._M_current)->name_)._M_dataplus" (parenthesized_expression "((iVar7._M_current)->name_)" ( (field_expression "(iVar7._M_current)->name_" (parenthesized_expression "(iVar7._M_current)" ( (field_expression "iVar7._M_current" identifier . field_identifier) )) -> field_identifier) )) . field_identifier) . field_identifier) = (binary_expression "(pointer)&((iVar7._M_current)->name_).field_2" (parenthesized_expression "(pointer)" ( identifier )) & (field_expression "((iVar7._M_current)->name_).field_2" (parenthesized_expression "((iVar7._M_current)->name_)" ( (field_expression "(iVar7._M_current)->name_" (parenthesized_expression "(iVar7._M_current)" ( (field_expression "iVar7._M_current" identifier . field_identifier) )) -> field_identifier) )) . field_identifier))) ;) comment (labeled_statement "std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();" statement_identifier (ERROR "::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>:" : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > :) : (expression_statement "_M_construct<char*>();" (binary_expression "_M_construct<char" identifier < identifier) (ERROR "*>()" * > ( )) ;)) (expression_statement "(iVar7._M_current)->put_in_sysroot_ = local_188.put_in_sysroot_;" (assignment_expression "(iVar7._M_current)->put_in_sysroot_ = local_188.put_in_sysroot_" (field_expression "(iVar7._M_current)->put_in_sysroot_" (parenthesized_expression "(iVar7._M_current)" ( (field_expression "iVar7._M_current" identifier . field_identifier) )) -> field_identifier) = (field_expression "local_188.put_in_sysroot_" identifier . field_identifier)) ;) (expression_statement "(iVar7._M_current)->is_in_sysroot_ = local_188.is_in_sysroot_;" (assignment_expression "(iVar7._M_current)->is_in_sysroot_ = local_188.is_in_sysroot_" (field_expression "(iVar7._M_current)->is_in_sysroot_" (parenthesized_expression "(iVar7._M_current)" ( (field_expression "iVar7._M_current" identifier . field_identifier) )) -> field_identifier) = (field_expression "local_188.is_in_sysroot_" identifier . field_identifier)) ;) (ERROR "ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::" (comma_expression "ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std" (assignment_expression "ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold" identifier = (binary_expression "&(this->library_path_).value.\n                   super__Vector_base<gold" (pointer_expression "&(this->library_path_).value.\n                   super__Vector_base" & (field_expression "(this->library_path_).value.\n                   super__Vector_base" (field_expression "(this->library_path_).value" (parenthesized_expression "(this->library_path_)" ( (field_expression "this->library_path_" identifier -> field_identifier) )) . field_identifier) . field_identifier)) < identifier)) (ERROR "::Search_directory" : : identifier) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Search_directory>_>\n                   ._M_impl._M_finish;" (field_expression "Search_directory>_>\n                   ._M_impl._M_finish" (field_expression "Search_directory>_>\n                   ._M_impl" (binary_expression "Search_directory>_" identifier > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "*ppSVar3 = *ppSVar3 + 1;" (assignment_expression "*ppSVar3 = *ppSVar3 + 1" (pointer_expression "*ppSVar3" * identifier) = (binary_expression "*ppSVar3 + 1" (pointer_expression "*ppSVar3" * identifier) + number_literal)) ;) }))) (if_statement "if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_188.name_._M_dataplus._M_p != paVar5) {\n        operator_delete(local_188.name_._M_dataplus._M_p);\n      }" if (parenthesized_expression "((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_188.name_._M_dataplus._M_p != paVar5)" ( (parenthesized_expression "(anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_188.name_._M_dataplus._M_p != paVar5)" ( (ERROR "anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::" (comma_expression "anon_union_16_2_edb7204a_for_basic_string<char,_std" (binary_expression "anon_union_16_2_edb7204a_for_basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : :) (binary_expression "allocator<char>_>_9\n           *)local_188.name_._M_dataplus._M_p != paVar5" (binary_expression "allocator<char>_>_9\n           *)local_188.name_._M_dataplus._M_p" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (binary_expression "_9\n           *)local_188.name_._M_dataplus._M_p" identifier * (ERROR ")" )) (field_expression "local_188.name_._M_dataplus._M_p" (field_expression "local_188.name_._M_dataplus" (field_expression "local_188.name_" identifier . field_identifier) . field_identifier) . field_identifier))) != identifier) )) )) (compound_statement "{\n        operator_delete(local_188.name_._M_dataplus._M_p);\n      }" { (expression_statement "operator_delete(local_188.name_._M_dataplus._M_p);" (call_expression "operator_delete(local_188.name_._M_dataplus._M_p)" identifier (argument_list "(local_188.name_._M_dataplus._M_p)" ( (field_expression "local_188.name_._M_dataplus._M_p" (field_expression "local_188.name_._M_dataplus" (field_expression "local_188.name_" identifier . field_identifier) . field_identifier) . field_identifier) ))) ;) })) (if_statement "if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }" if (parenthesized_expression "((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c)" ( (parenthesized_expression "(anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c)" ( (ERROR "anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::" (comma_expression "anon_union_16_2_edb7204a_for_basic_string<char,_std" (binary_expression "anon_union_16_2_edb7204a_for_basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : :) (binary_expression "allocator<char>_>_9\n           *)_in != &local_12c" (binary_expression "allocator<char>_>_9\n           *)_in" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (binary_expression "_9\n           *)_in" identifier * (ERROR ")" )) identifier)) != (pointer_expression "&local_12c" & identifier)) )) )) (compound_statement "{\n        operator_delete(_in);\n      }" { (expression_statement "operator_delete(_in);" (call_expression "operator_delete(_in)" identifier (argument_list "(_in)" ( identifier ))) ;) })) (expression_statement "_in = (undefined **)&local_12c;" (assignment_expression "_in = (undefined **)&local_12c" identifier = (cast_expression "(undefined **)&local_12c" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&local_12c" & identifier))) ;) comment (labeled_statement "std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();" statement_identifier (ERROR "::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>:" : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > :) : (expression_statement "_M_construct<char_const*>();" (binary_expression "_M_construct<char_const" identifier < identifier) (ERROR "*>()" * > ( )) ;)) (expression_statement "paVar5 = &local_16c.name_.field_2;" (assignment_expression "paVar5 = &local_16c.name_.field_2" identifier = (pointer_expression "&local_16c.name_.field_2" & (field_expression "local_16c.name_.field_2" (field_expression "local_16c.name_" identifier . field_identifier) . field_identifier))) ;) (expression_statement "local_16c.name_._M_dataplus._M_p = (pointer)paVar5;" (assignment_expression "local_16c.name_._M_dataplus._M_p = (pointer)paVar5" (field_expression "local_16c.name_._M_dataplus._M_p" (field_expression "local_16c.name_._M_dataplus" (field_expression "local_16c.name_" identifier . field_identifier) . field_identifier) . field_identifier) = (cast_expression "(pointer)paVar5" ( (type_descriptor "pointer" type_identifier) ) identifier)) ;) comment (labeled_statement "std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();" statement_identifier (ERROR "::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>:" : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > :) : (expression_statement "_M_construct<char*>();" (binary_expression "_M_construct<char" identifier < identifier) (ERROR "*>()" * > ( )) ;)) (expression_statement "local_16c.put_in_sysroot_ = true;" (assignment_expression "local_16c.put_in_sysroot_ = true" (field_expression "local_16c.put_in_sysroot_" identifier . field_identifier) = true) ;) (expression_statement "local_16c.is_in_sysroot_ = false;" (assignment_expression "local_16c.is_in_sysroot_ = false" (field_expression "local_16c.is_in_sysroot_" identifier . field_identifier) = false) ;) (if_statement "if (local_16c.name_._M_string_length == 0) {\n                    /* try { // try from 000e87cf to 000e87d3 has its CatchHandler @ 000e8b61 */\n        std::string::_M_replace((string *)&local_16c,0,0,".",1);\n      }" if (parenthesized_expression "(local_16c.name_._M_string_length == 0)" ( (binary_expression "local_16c.name_._M_string_length == 0" (field_expression "local_16c.name_._M_string_length" (field_expression "local_16c.name_" identifier . field_identifier) . field_identifier) == number_literal) )) (compound_statement "{\n                    /* try { // try from 000e87cf to 000e87d3 has its CatchHandler @ 000e8b61 */\n        std::string::_M_replace((string *)&local_16c,0,0,".",1);\n      }" { comment (labeled_statement "std::string::_M_replace((string *)&local_16c,0,0,".",1);" statement_identifier : (ERROR ":" :) (labeled_statement "string::_M_replace((string *)&local_16c,0,0,".",1);" statement_identifier : (ERROR ":" :) (expression_statement "_M_replace((string *)&local_16c,0,0,".",1);" (call_expression "_M_replace((string *)&local_16c,0,0,".",1)" identifier (argument_list "((string *)&local_16c,0,0,".",1)" ( (cast_expression "(string *)&local_16c" ( (type_descriptor "string *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_16c" & identifier)) , number_literal , number_literal , (string_literal ""."" " string_content ") , number_literal ))) ;))) })) (ERROR "iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::" (comma_expression "iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std" (assignment_expression "iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold" (field_expression "iVar7._M_current" identifier . field_identifier) = (binary_expression "(this->library_path_).value.\n           super__Vector_base<gold" (field_expression "(this->library_path_).value.\n           super__Vector_base" (field_expression "(this->library_path_).value" (parenthesized_expression "(this->library_path_)" ( (field_expression "this->library_path_" identifier -> field_identifier) )) . field_identifier) . field_identifier) < identifier)) (ERROR "::Search_directory" : : identifier) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Search_directory>_>.\n           _M_impl._M_finish;" (field_expression "Search_directory>_>.\n           _M_impl._M_finish" (field_expression "Search_directory>_>.\n           _M_impl" (binary_expression "Search_directory>_" identifier > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (if_statement "if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e881b to 000e881f has its CatchHandler @ 000e8b4c */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_16c);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e844b to 000e844f has its CatchHandler @ 000e8b4c */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_16c.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_16c.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }" if (parenthesized_expression "(iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage)" ( (ERROR "iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::" (comma_expression "iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std" (binary_expression "iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold" (field_expression "iVar7._M_current" identifier . field_identifier) == (binary_expression "(this->library_path_).value.\n          super__Vector_base<gold" (field_expression "(this->library_path_).value.\n          super__Vector_base" (field_expression "(this->library_path_).value" (parenthesized_expression "(this->library_path_)" ( (field_expression "this->library_path_" identifier -> field_identifier) )) . field_identifier) . field_identifier) < identifier)) (ERROR "::Search_directory" : : identifier) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : :) (field_expression "Search_directory>_>.\n          _M_impl._M_end_of_storage" (field_expression "Search_directory>_>.\n          _M_impl" (binary_expression "Search_directory>_" identifier > identifier) (ERROR ">" >) . field_identifier) . field_identifier) )) (compound_statement "{\n                    /* try { // try from 000e881b to 000e881f has its CatchHandler @ 000e8b4c */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_16c);\n      }" { comment (labeled_statement "std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,&local_16c);" statement_identifier (ERROR "::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold:" : : (binary_expression "vector<gold" identifier < identifier) : : (comma_expression "Search_directory,_std" identifier , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : : (binary_expression "Search_directory>_" identifier > identifier) > : : (binary_expression "_M_realloc_insert<const_gold" identifier < identifier) :) : (expression_statement "Search_directory&>(this_00,iVar7,&local_16c);" (binary_expression "Search_directory&>(this_00,iVar7,&local_16c)" identifier (ERROR "&" &) > (parenthesized_expression "(this_00,iVar7,&local_16c)" ( (comma_expression "this_00,iVar7,&local_16c" identifier , (comma_expression "iVar7,&local_16c" identifier , (pointer_expression "&local_16c" & identifier))) ))) ;)) }) (else_clause "else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e844b to 000e844f has its CatchHandler @ 000e8b4c */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_16c.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_16c.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }" else (compound_statement "{\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e844b to 000e844f has its CatchHandler @ 000e8b4c */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = local_16c.put_in_sysroot_;\n        (iVar7._M_current)->is_in_sysroot_ = local_16c.is_in_sysroot_;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }" { (expression_statement "((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;" (assignment_expression "((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2" (field_expression "((iVar7._M_current)->name_)._M_dataplus._M_p" (field_expression "((iVar7._M_current)->name_)._M_dataplus" (parenthesized_expression "((iVar7._M_current)->name_)" ( (field_expression "(iVar7._M_current)->name_" (parenthesized_expression "(iVar7._M_current)" ( (field_expression "iVar7._M_current" identifier . field_identifier) )) -> field_identifier) )) . field_identifier) . field_identifier) = (binary_expression "(pointer)&((iVar7._M_current)->name_).field_2" (parenthesized_expression "(pointer)" ( identifier )) & (field_expression "((iVar7._M_current)->name_).field_2" (parenthesized_expression "((iVar7._M_current)->name_)" ( (field_expression "(iVar7._M_current)->name_" (parenthesized_expression "(iVar7._M_current)" ( (field_expression "iVar7._M_current" identifier . field_identifier) )) -> field_identifier) )) . field_identifier))) ;) comment (labeled_statement "std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();" statement_identifier (ERROR "::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>:" : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > :) : (expression_statement "_M_construct<char*>();" (binary_expression "_M_construct<char" identifier < identifier) (ERROR "*>()" * > ( )) ;)) (expression_statement "(iVar7._M_current)->put_in_sysroot_ = local_16c.put_in_sysroot_;" (assignment_expression "(iVar7._M_current)->put_in_sysroot_ = local_16c.put_in_sysroot_" (field_expression "(iVar7._M_current)->put_in_sysroot_" (parenthesized_expression "(iVar7._M_current)" ( (field_expression "iVar7._M_current" identifier . field_identifier) )) -> field_identifier) = (field_expression "local_16c.put_in_sysroot_" identifier . field_identifier)) ;) (expression_statement "(iVar7._M_current)->is_in_sysroot_ = local_16c.is_in_sysroot_;" (assignment_expression "(iVar7._M_current)->is_in_sysroot_ = local_16c.is_in_sysroot_" (field_expression "(iVar7._M_current)->is_in_sysroot_" (parenthesized_expression "(iVar7._M_current)" ( (field_expression "iVar7._M_current" identifier . field_identifier) )) -> field_identifier) = (field_expression "local_16c.is_in_sysroot_" identifier . field_identifier)) ;) (ERROR "ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::" (comma_expression "ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std" (assignment_expression "ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold" identifier = (binary_expression "&(this->library_path_).value.\n                   super__Vector_base<gold" (pointer_expression "&(this->library_path_).value.\n                   super__Vector_base" & (field_expression "(this->library_path_).value.\n                   super__Vector_base" (field_expression "(this->library_path_).value" (parenthesized_expression "(this->library_path_)" ( (field_expression "this->library_path_" identifier -> field_identifier) )) . field_identifier) . field_identifier)) < identifier)) (ERROR "::Search_directory" : : identifier) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Search_directory>_>\n                   ._M_impl._M_finish;" (field_expression "Search_directory>_>\n                   ._M_impl._M_finish" (field_expression "Search_directory>_>\n                   ._M_impl" (binary_expression "Search_directory>_" identifier > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "*ppSVar3 = *ppSVar3 + 1;" (assignment_expression "*ppSVar3 = *ppSVar3 + 1" (pointer_expression "*ppSVar3" * identifier) = (binary_expression "*ppSVar3 + 1" (pointer_expression "*ppSVar3" * identifier) + number_literal)) ;) }))) (if_statement "if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_16c.name_._M_dataplus._M_p != paVar5) {\n        operator_delete(local_16c.name_._M_dataplus._M_p);\n      }" if (parenthesized_expression "((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_16c.name_._M_dataplus._M_p != paVar5)" ( (parenthesized_expression "(anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)local_16c.name_._M_dataplus._M_p != paVar5)" ( (ERROR "anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::" (comma_expression "anon_union_16_2_edb7204a_for_basic_string<char,_std" (binary_expression "anon_union_16_2_edb7204a_for_basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : :) (binary_expression "allocator<char>_>_9\n           *)local_16c.name_._M_dataplus._M_p != paVar5" (binary_expression "allocator<char>_>_9\n           *)local_16c.name_._M_dataplus._M_p" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (binary_expression "_9\n           *)local_16c.name_._M_dataplus._M_p" identifier * (ERROR ")" )) (field_expression "local_16c.name_._M_dataplus._M_p" (field_expression "local_16c.name_._M_dataplus" (field_expression "local_16c.name_" identifier . field_identifier) . field_identifier) . field_identifier))) != identifier) )) )) (compound_statement "{\n        operator_delete(local_16c.name_._M_dataplus._M_p);\n      }" { (expression_statement "operator_delete(local_16c.name_._M_dataplus._M_p);" (call_expression "operator_delete(local_16c.name_._M_dataplus._M_p)" identifier (argument_list "(local_16c.name_._M_dataplus._M_p)" ( (field_expression "local_16c.name_._M_dataplus._M_p" (field_expression "local_16c.name_._M_dataplus" (field_expression "local_16c.name_" identifier . field_identifier) . field_identifier) . field_identifier) ))) ;) })) (if_statement "if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }" if (parenthesized_expression "((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c)" ( (parenthesized_expression "(anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c)" ( (ERROR "anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::" (comma_expression "anon_union_16_2_edb7204a_for_basic_string<char,_std" (binary_expression "anon_union_16_2_edb7204a_for_basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : :) (binary_expression "allocator<char>_>_9\n           *)_in != &local_12c" (binary_expression "allocator<char>_>_9\n           *)_in" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (binary_expression "_9\n           *)_in" identifier * (ERROR ")" )) identifier)) != (pointer_expression "&local_12c" & identifier)) )) )) (compound_statement "{\n        operator_delete(_in);\n      }" { (expression_statement "operator_delete(_in);" (call_expression "operator_delete(_in)" identifier (argument_list "(_in)" ( identifier ))) ;) })) (expression_statement "_in = (undefined **)&local_12c;" (assignment_expression "_in = (undefined **)&local_12c" identifier = (cast_expression "(undefined **)&local_12c" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&local_12c" & identifier))) ;) comment (labeled_statement "std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char_const*>();" statement_identifier (ERROR "::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>:" : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > :) : (expression_statement "_M_construct<char_const*>();" (binary_expression "_M_construct<char_const" identifier < identifier) (ERROR "*>()" * > ( )) ;)) (expression_statement "line._M_dataplus._M_p = (pointer)&line.field_2;" (assignment_expression "line._M_dataplus._M_p = (pointer)&line.field_2" (field_expression "line._M_dataplus._M_p" (field_expression "line._M_dataplus" identifier . field_identifier) . field_identifier) = (binary_expression "(pointer)&line.field_2" (parenthesized_expression "(pointer)" ( identifier )) & (field_expression "line.field_2" identifier . field_identifier))) ;) comment (labeled_statement "std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n      _M_construct<char*>();" statement_identifier (ERROR "::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>:" : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > :) : (expression_statement "_M_construct<char*>();" (binary_expression "_M_construct<char" identifier < identifier) (ERROR "*>()" * > ( )) ;)) (if_statement "if (line._M_string_length == 0) {\n                    /* try { // try from 000e87fc to 000e8800 has its CatchHandler @ 000e8b5a */\n        std::string::_M_replace((string *)&line,0,0,".",1);\n      }" if (parenthesized_expression "(line._M_string_length == 0)" ( (binary_expression "line._M_string_length == 0" (field_expression "line._M_string_length" identifier . field_identifier) == number_literal) )) (compound_statement "{\n                    /* try { // try from 000e87fc to 000e8800 has its CatchHandler @ 000e8b5a */\n        std::string::_M_replace((string *)&line,0,0,".",1);\n      }" { comment (labeled_statement "std::string::_M_replace((string *)&line,0,0,".",1);" statement_identifier : (ERROR ":" :) (labeled_statement "string::_M_replace((string *)&line,0,0,".",1);" statement_identifier : (ERROR ":" :) (expression_statement "_M_replace((string *)&line,0,0,".",1);" (call_expression "_M_replace((string *)&line,0,0,".",1)" identifier (argument_list "((string *)&line,0,0,".",1)" ( (cast_expression "(string *)&line" ( (type_descriptor "string *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&line" & identifier)) , number_literal , number_literal , (string_literal ""."" " string_content ") , number_literal ))) ;))) })) (ERROR "iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std::allocator<gold::" (comma_expression "iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold::Search_directory,_std" (assignment_expression "iVar7._M_current =\n           (this->library_path_).value.\n           super__Vector_base<gold" (field_expression "iVar7._M_current" identifier . field_identifier) = (binary_expression "(this->library_path_).value.\n           super__Vector_base<gold" (field_expression "(this->library_path_).value.\n           super__Vector_base" (field_expression "(this->library_path_).value" (parenthesized_expression "(this->library_path_)" ( (field_expression "this->library_path_" identifier -> field_identifier) )) . field_identifier) . field_identifier) < identifier)) (ERROR "::Search_directory" : : identifier) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Search_directory>_>.\n           _M_impl._M_finish;" (field_expression "Search_directory>_>.\n           _M_impl._M_finish" (field_expression "Search_directory>_>.\n           _M_impl" (binary_expression "Search_directory>_" identifier > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (if_statement "if (iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e8860 to 000e8864 has its CatchHandler @ 000e8b14 */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,(Search_directory *)&line);\n      }\n      else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e855d to 000e8561 has its CatchHandler @ 000e8b14 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = true;\n        (iVar7._M_current)->is_in_sysroot_ = false;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }" if (parenthesized_expression "(iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n          _M_impl._M_end_of_storage)" ( (ERROR "iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std::allocator<gold::" (comma_expression "iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold::Search_directory,_std" (binary_expression "iVar7._M_current ==\n          (this->library_path_).value.\n          super__Vector_base<gold" (field_expression "iVar7._M_current" identifier . field_identifier) == (binary_expression "(this->library_path_).value.\n          super__Vector_base<gold" (field_expression "(this->library_path_).value.\n          super__Vector_base" (field_expression "(this->library_path_).value" (parenthesized_expression "(this->library_path_)" ( (field_expression "this->library_path_" identifier -> field_identifier) )) . field_identifier) . field_identifier) < identifier)) (ERROR "::Search_directory" : : identifier) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : :) (field_expression "Search_directory>_>.\n          _M_impl._M_end_of_storage" (field_expression "Search_directory>_>.\n          _M_impl" (binary_expression "Search_directory>_" identifier > identifier) (ERROR ">" >) . field_identifier) . field_identifier) )) (compound_statement "{\n                    /* try { // try from 000e8860 to 000e8864 has its CatchHandler @ 000e8b14 */\n        std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,(Search_directory *)&line);\n      }" { comment (labeled_statement "std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold::Search_directory&>(this_00,iVar7,(Search_directory *)&line);" statement_identifier (ERROR "::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n        _M_realloc_insert<const_gold:" : : (binary_expression "vector<gold" identifier < identifier) : : (comma_expression "Search_directory,_std" identifier , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : : (binary_expression "Search_directory>_" identifier > identifier) > : : (binary_expression "_M_realloc_insert<const_gold" identifier < identifier) :) : (expression_statement "Search_directory&>(this_00,iVar7,(Search_directory *)&line);" (binary_expression "Search_directory&>(this_00,iVar7,(Search_directory *)&line)" identifier (ERROR "&" &) > (parenthesized_expression "(this_00,iVar7,(Search_directory *)&line)" ( (comma_expression "this_00,iVar7,(Search_directory *)&line" identifier , (comma_expression "iVar7,(Search_directory *)&line" identifier , (cast_expression "(Search_directory *)&line" ( (type_descriptor "Search_directory *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&line" & identifier)))) ))) ;)) }) (else_clause "else {\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e855d to 000e8561 has its CatchHandler @ 000e8b14 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = true;\n        (iVar7._M_current)->is_in_sysroot_ = false;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }" else (compound_statement "{\n        ((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;\n                    /* try { // try from 000e855d to 000e8561 has its CatchHandler @ 000e8b14 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n        (iVar7._M_current)->put_in_sysroot_ = true;\n        (iVar7._M_current)->is_in_sysroot_ = false;\n        ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                   ._M_impl._M_finish;\n        *ppSVar3 = *ppSVar3 + 1;\n      }" { (expression_statement "((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2\n        ;" (assignment_expression "((iVar7._M_current)->name_)._M_dataplus._M_p = (pointer)&((iVar7._M_current)->name_).field_2" (field_expression "((iVar7._M_current)->name_)._M_dataplus._M_p" (field_expression "((iVar7._M_current)->name_)._M_dataplus" (parenthesized_expression "((iVar7._M_current)->name_)" ( (field_expression "(iVar7._M_current)->name_" (parenthesized_expression "(iVar7._M_current)" ( (field_expression "iVar7._M_current" identifier . field_identifier) )) -> field_identifier) )) . field_identifier) . field_identifier) = (binary_expression "(pointer)&((iVar7._M_current)->name_).field_2" (parenthesized_expression "(pointer)" ( identifier )) & (field_expression "((iVar7._M_current)->name_).field_2" (parenthesized_expression "((iVar7._M_current)->name_)" ( (field_expression "(iVar7._M_current)->name_" (parenthesized_expression "(iVar7._M_current)" ( (field_expression "iVar7._M_current" identifier . field_identifier) )) -> field_identifier) )) . field_identifier))) ;) comment (labeled_statement "std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();" statement_identifier (ERROR "::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>:" : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > :) : (expression_statement "_M_construct<char*>();" (binary_expression "_M_construct<char" identifier < identifier) (ERROR "*>()" * > ( )) ;)) (expression_statement "(iVar7._M_current)->put_in_sysroot_ = true;" (assignment_expression "(iVar7._M_current)->put_in_sysroot_ = true" (field_expression "(iVar7._M_current)->put_in_sysroot_" (parenthesized_expression "(iVar7._M_current)" ( (field_expression "iVar7._M_current" identifier . field_identifier) )) -> field_identifier) = true) ;) (expression_statement "(iVar7._M_current)->is_in_sysroot_ = false;" (assignment_expression "(iVar7._M_current)->is_in_sysroot_ = false" (field_expression "(iVar7._M_current)->is_in_sysroot_" (parenthesized_expression "(iVar7._M_current)" ( (field_expression "iVar7._M_current" identifier . field_identifier) )) -> field_identifier) = false) ;) (ERROR "ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std::allocator<gold::" (comma_expression "ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold::Search_directory,_std" (assignment_expression "ppSVar3 = &(this->library_path_).value.\n                   super__Vector_base<gold" identifier = (binary_expression "&(this->library_path_).value.\n                   super__Vector_base<gold" (pointer_expression "&(this->library_path_).value.\n                   super__Vector_base" & (field_expression "(this->library_path_).value.\n                   super__Vector_base" (field_expression "(this->library_path_).value" (parenthesized_expression "(this->library_path_)" ( (field_expression "this->library_path_" identifier -> field_identifier) )) . field_identifier) . field_identifier)) < identifier)) (ERROR "::Search_directory" : : identifier) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Search_directory>_>\n                   ._M_impl._M_finish;" (field_expression "Search_directory>_>\n                   ._M_impl._M_finish" (field_expression "Search_directory>_>\n                   ._M_impl" (binary_expression "Search_directory>_" identifier > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "*ppSVar3 = *ppSVar3 + 1;" (assignment_expression "*ppSVar3 = *ppSVar3 + 1" (pointer_expression "*ppSVar3" * identifier) = (binary_expression "*ppSVar3 + 1" (pointer_expression "*ppSVar3" * identifier) + number_literal)) ;) }))) (if_statement "if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)line._M_dataplus._M_p != &line.field_2) {\n        operator_delete(line._M_dataplus._M_p);\n      }" if (parenthesized_expression "((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)line._M_dataplus._M_p != &line.field_2)" ( (parenthesized_expression "(anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)line._M_dataplus._M_p != &line.field_2)" ( (ERROR "anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::" (comma_expression "anon_union_16_2_edb7204a_for_basic_string<char,_std" (binary_expression "anon_union_16_2_edb7204a_for_basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : :) (binary_expression "allocator<char>_>_9\n           *)line._M_dataplus._M_p != &line.field_2" (binary_expression "allocator<char>_>_9\n           *)line._M_dataplus._M_p" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (binary_expression "_9\n           *)line._M_dataplus._M_p" identifier * (ERROR ")" )) (field_expression "line._M_dataplus._M_p" (field_expression "line._M_dataplus" identifier . field_identifier) . field_identifier))) != (pointer_expression "&line.field_2" & (field_expression "line.field_2" identifier . field_identifier))) )) )) (compound_statement "{\n        operator_delete(line._M_dataplus._M_p);\n      }" { (expression_statement "operator_delete(line._M_dataplus._M_p);" (call_expression "operator_delete(line._M_dataplus._M_p)" identifier (argument_list "(line._M_dataplus._M_p)" ( (field_expression "line._M_dataplus._M_p" (field_expression "line._M_dataplus" identifier . field_identifier) . field_identifier) ))) ;) })) (if_statement "if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c) {\n        operator_delete(_in);\n      }" if (parenthesized_expression "((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c)" ( (parenthesized_expression "(anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n           *)_in != &local_12c)" ( (ERROR "anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::" (comma_expression "anon_union_16_2_edb7204a_for_basic_string<char,_std" (binary_expression "anon_union_16_2_edb7204a_for_basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : :) (binary_expression "allocator<char>_>_9\n           *)_in != &local_12c" (binary_expression "allocator<char>_>_9\n           *)_in" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (binary_expression "_9\n           *)_in" identifier * (ERROR ")" )) identifier)) != (pointer_expression "&local_12c" & identifier)) )) )) (compound_statement "{\n        operator_delete(_in);\n      }" { (expression_statement "operator_delete(_in);" (call_expression "operator_delete(_in)" identifier (argument_list "(_in)" ( identifier ))) ;) })) (goto_statement "goto LAB_000e7f08;" goto statement_identifier ;) })) }) (else_clause "else {\n    pcVar15 = (this->Y_).value;\n    sVar13 = strlen(pcVar15);\n                    /* try { // try from 000e7ede to 000e7f8e has its CatchHandler @ 000e8b37 */\n    std::string::_M_replace((string *)&libpath,0,0,pcVar15,sVar13);\n    iVar17 = std::string::compare((string *)&libpath,0,2,"P,");\n    if (iVar17 == 0) {\n      sVar18 = libpath._M_string_length;\n      if (2 < libpath._M_string_length) {\n        sVar18 = 2;\n      }\n                    /* try { // try from 000e877d to 000e8781 has its CatchHandler @ 000e8b37 */\n      std::string::_M_erase((string *)&libpath,0,sVar18);\n    }\nLAB_000e7f08:\n    uVar19 = 0;\n    if (libpath._M_string_length != 0) {\n      do {\n        uVar14 = std::string::find((string *)&libpath,':',uVar19);\n        if ((uVar14 == 0xffffffff) || (uVar14 != uVar19)) {\n          if (libpath._M_string_length < uVar19) {\n                    /* WARNING: Subroutine does not return */\n            std::__throw_out_of_range_fmt("%s: __pos (which is %zu) > this->size() (which is %zu)");\n          }\n          line._M_dataplus._M_p = (pointer)&line.field_2;\n          std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n          _M_construct<char_const*>();\n          _in = (undefined **)&local_12c;\n                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */\n          std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n          _M_construct<char*>();\n          local_11c._0_1_ = true;\n          local_11c._1_1_ = false;\n          if (local_130 == 0) {\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            std::string::_M_replace((string *)&in,0,0,".",1);\n          }\n          iVar7._M_current =\n               (this->library_path_).value.\n               super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n               _M_impl._M_finish;\n          if (iVar7._M_current ==\n              (this->library_path_).value.\n              super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n              _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n            _M_realloc_insert<const_gold::Search_directory&>\n                      (&(this->library_path_).value,iVar7,(Search_directory *)&in);\n          }\n          else {\n            ((iVar7._M_current)->name_)._M_dataplus._M_p =\n                 (pointer)&((iVar7._M_current)->name_).field_2;\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n            _M_construct<char*>();\n            (iVar7._M_current)->put_in_sysroot_ = local_11c._0_1_;\n            (iVar7._M_current)->is_in_sysroot_ = local_11c._1_1_;\n            ppSVar3 = &(this->library_path_).value.\n                       super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                       ._M_impl._M_finish;\n            *ppSVar3 = *ppSVar3 + 1;\n          }\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)_in != &local_12c) {\n            operator_delete(_in);\n          }\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)line._M_dataplus._M_p != &line.field_2) {\n            operator_delete(line._M_dataplus._M_p);\n          }\n          if (uVar14 == 0xffffffff) break;\n        }\n        uVar19 = uVar14 + 1;\n      } while( true );\n    }\n  }" else (compound_statement "{\n    pcVar15 = (this->Y_).value;\n    sVar13 = strlen(pcVar15);\n                    /* try { // try from 000e7ede to 000e7f8e has its CatchHandler @ 000e8b37 */\n    std::string::_M_replace((string *)&libpath,0,0,pcVar15,sVar13);\n    iVar17 = std::string::compare((string *)&libpath,0,2,"P,");\n    if (iVar17 == 0) {\n      sVar18 = libpath._M_string_length;\n      if (2 < libpath._M_string_length) {\n        sVar18 = 2;\n      }\n                    /* try { // try from 000e877d to 000e8781 has its CatchHandler @ 000e8b37 */\n      std::string::_M_erase((string *)&libpath,0,sVar18);\n    }\nLAB_000e7f08:\n    uVar19 = 0;\n    if (libpath._M_string_length != 0) {\n      do {\n        uVar14 = std::string::find((string *)&libpath,':',uVar19);\n        if ((uVar14 == 0xffffffff) || (uVar14 != uVar19)) {\n          if (libpath._M_string_length < uVar19) {\n                    /* WARNING: Subroutine does not return */\n            std::__throw_out_of_range_fmt("%s: __pos (which is %zu) > this->size() (which is %zu)");\n          }\n          line._M_dataplus._M_p = (pointer)&line.field_2;\n          std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n          _M_construct<char_const*>();\n          _in = (undefined **)&local_12c;\n                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */\n          std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n          _M_construct<char*>();\n          local_11c._0_1_ = true;\n          local_11c._1_1_ = false;\n          if (local_130 == 0) {\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            std::string::_M_replace((string *)&in,0,0,".",1);\n          }\n          iVar7._M_current =\n               (this->library_path_).value.\n               super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n               _M_impl._M_finish;\n          if (iVar7._M_current ==\n              (this->library_path_).value.\n              super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n              _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n            _M_realloc_insert<const_gold::Search_directory&>\n                      (&(this->library_path_).value,iVar7,(Search_directory *)&in);\n          }\n          else {\n            ((iVar7._M_current)->name_)._M_dataplus._M_p =\n                 (pointer)&((iVar7._M_current)->name_).field_2;\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n            _M_construct<char*>();\n            (iVar7._M_current)->put_in_sysroot_ = local_11c._0_1_;\n            (iVar7._M_current)->is_in_sysroot_ = local_11c._1_1_;\n            ppSVar3 = &(this->library_path_).value.\n                       super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                       ._M_impl._M_finish;\n            *ppSVar3 = *ppSVar3 + 1;\n          }\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)_in != &local_12c) {\n            operator_delete(_in);\n          }\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)line._M_dataplus._M_p != &line.field_2) {\n            operator_delete(line._M_dataplus._M_p);\n          }\n          if (uVar14 == 0xffffffff) break;\n        }\n        uVar19 = uVar14 + 1;\n      } while( true );\n    }\n  }" { (expression_statement "pcVar15 = (this->Y_).value;" (assignment_expression "pcVar15 = (this->Y_).value" identifier = (field_expression "(this->Y_).value" (parenthesized_expression "(this->Y_)" ( (field_expression "this->Y_" identifier -> field_identifier) )) . field_identifier)) ;) (expression_statement "sVar13 = strlen(pcVar15);" (assignment_expression "sVar13 = strlen(pcVar15)" identifier = (call_expression "strlen(pcVar15)" identifier (argument_list "(pcVar15)" ( identifier )))) ;) comment (labeled_statement "std::string::_M_replace((string *)&libpath,0,0,pcVar15,sVar13);" statement_identifier : (ERROR ":" :) (labeled_statement "string::_M_replace((string *)&libpath,0,0,pcVar15,sVar13);" statement_identifier : (ERROR ":" :) (expression_statement "_M_replace((string *)&libpath,0,0,pcVar15,sVar13);" (call_expression "_M_replace((string *)&libpath,0,0,pcVar15,sVar13)" identifier (argument_list "((string *)&libpath,0,0,pcVar15,sVar13)" ( (cast_expression "(string *)&libpath" ( (type_descriptor "string *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&libpath" & identifier)) , number_literal , number_literal , identifier , identifier ))) ;))) (ERROR "iVar17 = std::" (assignment_expression "iVar17 = std" identifier = identifier) : :) (labeled_statement "string::compare((string *)&libpath,0,2,"P,");" statement_identifier : (ERROR ":" :) (expression_statement "compare((string *)&libpath,0,2,"P,");" (call_expression "compare((string *)&libpath,0,2,"P,")" identifier (argument_list "((string *)&libpath,0,2,"P,")" ( (cast_expression "(string *)&libpath" ( (type_descriptor "string *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&libpath" & identifier)) , number_literal , number_literal , (string_literal ""P,"" " string_content ") ))) ;)) (if_statement "if (iVar17 == 0) {\n      sVar18 = libpath._M_string_length;\n      if (2 < libpath._M_string_length) {\n        sVar18 = 2;\n      }\n                    /* try { // try from 000e877d to 000e8781 has its CatchHandler @ 000e8b37 */\n      std::string::_M_erase((string *)&libpath,0,sVar18);\n    }" if (parenthesized_expression "(iVar17 == 0)" ( (binary_expression "iVar17 == 0" identifier == number_literal) )) (compound_statement "{\n      sVar18 = libpath._M_string_length;\n      if (2 < libpath._M_string_length) {\n        sVar18 = 2;\n      }\n                    /* try { // try from 000e877d to 000e8781 has its CatchHandler @ 000e8b37 */\n      std::string::_M_erase((string *)&libpath,0,sVar18);\n    }" { (expression_statement "sVar18 = libpath._M_string_length;" (assignment_expression "sVar18 = libpath._M_string_length" identifier = (field_expression "libpath._M_string_length" identifier . field_identifier)) ;) (if_statement "if (2 < libpath._M_string_length) {\n        sVar18 = 2;\n      }" if (parenthesized_expression "(2 < libpath._M_string_length)" ( (binary_expression "2 < libpath._M_string_length" number_literal < (field_expression "libpath._M_string_length" identifier . field_identifier)) )) (compound_statement "{\n        sVar18 = 2;\n      }" { (expression_statement "sVar18 = 2;" (assignment_expression "sVar18 = 2" identifier = number_literal) ;) })) comment (labeled_statement "std::string::_M_erase((string *)&libpath,0,sVar18);" statement_identifier : (ERROR ":" :) (labeled_statement "string::_M_erase((string *)&libpath,0,sVar18);" statement_identifier : (ERROR ":" :) (expression_statement "_M_erase((string *)&libpath,0,sVar18);" (call_expression "_M_erase((string *)&libpath,0,sVar18)" identifier (argument_list "((string *)&libpath,0,sVar18)" ( (cast_expression "(string *)&libpath" ( (type_descriptor "string *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&libpath" & identifier)) , number_literal , identifier ))) ;))) })) (labeled_statement "LAB_000e7f08:\n    uVar19 = 0;" statement_identifier : (expression_statement "uVar19 = 0;" (assignment_expression "uVar19 = 0" identifier = number_literal) ;)) (if_statement "if (libpath._M_string_length != 0) {\n      do {\n        uVar14 = std::string::find((string *)&libpath,':',uVar19);\n        if ((uVar14 == 0xffffffff) || (uVar14 != uVar19)) {\n          if (libpath._M_string_length < uVar19) {\n                    /* WARNING: Subroutine does not return */\n            std::__throw_out_of_range_fmt("%s: __pos (which is %zu) > this->size() (which is %zu)");\n          }\n          line._M_dataplus._M_p = (pointer)&line.field_2;\n          std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n          _M_construct<char_const*>();\n          _in = (undefined **)&local_12c;\n                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */\n          std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n          _M_construct<char*>();\n          local_11c._0_1_ = true;\n          local_11c._1_1_ = false;\n          if (local_130 == 0) {\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            std::string::_M_replace((string *)&in,0,0,".",1);\n          }\n          iVar7._M_current =\n               (this->library_path_).value.\n               super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n               _M_impl._M_finish;\n          if (iVar7._M_current ==\n              (this->library_path_).value.\n              super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n              _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n            _M_realloc_insert<const_gold::Search_directory&>\n                      (&(this->library_path_).value,iVar7,(Search_directory *)&in);\n          }\n          else {\n            ((iVar7._M_current)->name_)._M_dataplus._M_p =\n                 (pointer)&((iVar7._M_current)->name_).field_2;\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n            _M_construct<char*>();\n            (iVar7._M_current)->put_in_sysroot_ = local_11c._0_1_;\n            (iVar7._M_current)->is_in_sysroot_ = local_11c._1_1_;\n            ppSVar3 = &(this->library_path_).value.\n                       super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                       ._M_impl._M_finish;\n            *ppSVar3 = *ppSVar3 + 1;\n          }\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)_in != &local_12c) {\n            operator_delete(_in);\n          }\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)line._M_dataplus._M_p != &line.field_2) {\n            operator_delete(line._M_dataplus._M_p);\n          }\n          if (uVar14 == 0xffffffff) break;\n        }\n        uVar19 = uVar14 + 1;\n      } while( true );\n    }" if (parenthesized_expression "(libpath._M_string_length != 0)" ( (binary_expression "libpath._M_string_length != 0" (field_expression "libpath._M_string_length" identifier . field_identifier) != number_literal) )) (compound_statement "{\n      do {\n        uVar14 = std::string::find((string *)&libpath,':',uVar19);\n        if ((uVar14 == 0xffffffff) || (uVar14 != uVar19)) {\n          if (libpath._M_string_length < uVar19) {\n                    /* WARNING: Subroutine does not return */\n            std::__throw_out_of_range_fmt("%s: __pos (which is %zu) > this->size() (which is %zu)");\n          }\n          line._M_dataplus._M_p = (pointer)&line.field_2;\n          std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n          _M_construct<char_const*>();\n          _in = (undefined **)&local_12c;\n                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */\n          std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n          _M_construct<char*>();\n          local_11c._0_1_ = true;\n          local_11c._1_1_ = false;\n          if (local_130 == 0) {\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            std::string::_M_replace((string *)&in,0,0,".",1);\n          }\n          iVar7._M_current =\n               (this->library_path_).value.\n               super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n               _M_impl._M_finish;\n          if (iVar7._M_current ==\n              (this->library_path_).value.\n              super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n              _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n            _M_realloc_insert<const_gold::Search_directory&>\n                      (&(this->library_path_).value,iVar7,(Search_directory *)&in);\n          }\n          else {\n            ((iVar7._M_current)->name_)._M_dataplus._M_p =\n                 (pointer)&((iVar7._M_current)->name_).field_2;\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n            _M_construct<char*>();\n            (iVar7._M_current)->put_in_sysroot_ = local_11c._0_1_;\n            (iVar7._M_current)->is_in_sysroot_ = local_11c._1_1_;\n            ppSVar3 = &(this->library_path_).value.\n                       super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                       ._M_impl._M_finish;\n            *ppSVar3 = *ppSVar3 + 1;\n          }\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)_in != &local_12c) {\n            operator_delete(_in);\n          }\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)line._M_dataplus._M_p != &line.field_2) {\n            operator_delete(line._M_dataplus._M_p);\n          }\n          if (uVar14 == 0xffffffff) break;\n        }\n        uVar19 = uVar14 + 1;\n      } while( true );\n    }" { (do_statement "do {\n        uVar14 = std::string::find((string *)&libpath,':',uVar19);\n        if ((uVar14 == 0xffffffff) || (uVar14 != uVar19)) {\n          if (libpath._M_string_length < uVar19) {\n                    /* WARNING: Subroutine does not return */\n            std::__throw_out_of_range_fmt("%s: __pos (which is %zu) > this->size() (which is %zu)");\n          }\n          line._M_dataplus._M_p = (pointer)&line.field_2;\n          std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n          _M_construct<char_const*>();\n          _in = (undefined **)&local_12c;\n                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */\n          std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n          _M_construct<char*>();\n          local_11c._0_1_ = true;\n          local_11c._1_1_ = false;\n          if (local_130 == 0) {\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            std::string::_M_replace((string *)&in,0,0,".",1);\n          }\n          iVar7._M_current =\n               (this->library_path_).value.\n               super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n               _M_impl._M_finish;\n          if (iVar7._M_current ==\n              (this->library_path_).value.\n              super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n              _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n            _M_realloc_insert<const_gold::Search_directory&>\n                      (&(this->library_path_).value,iVar7,(Search_directory *)&in);\n          }\n          else {\n            ((iVar7._M_current)->name_)._M_dataplus._M_p =\n                 (pointer)&((iVar7._M_current)->name_).field_2;\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n            _M_construct<char*>();\n            (iVar7._M_current)->put_in_sysroot_ = local_11c._0_1_;\n            (iVar7._M_current)->is_in_sysroot_ = local_11c._1_1_;\n            ppSVar3 = &(this->library_path_).value.\n                       super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                       ._M_impl._M_finish;\n            *ppSVar3 = *ppSVar3 + 1;\n          }\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)_in != &local_12c) {\n            operator_delete(_in);\n          }\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)line._M_dataplus._M_p != &line.field_2) {\n            operator_delete(line._M_dataplus._M_p);\n          }\n          if (uVar14 == 0xffffffff) break;\n        }\n        uVar19 = uVar14 + 1;\n      } while( true );" do (compound_statement "{\n        uVar14 = std::string::find((string *)&libpath,':',uVar19);\n        if ((uVar14 == 0xffffffff) || (uVar14 != uVar19)) {\n          if (libpath._M_string_length < uVar19) {\n                    /* WARNING: Subroutine does not return */\n            std::__throw_out_of_range_fmt("%s: __pos (which is %zu) > this->size() (which is %zu)");\n          }\n          line._M_dataplus._M_p = (pointer)&line.field_2;\n          std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n          _M_construct<char_const*>();\n          _in = (undefined **)&local_12c;\n                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */\n          std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n          _M_construct<char*>();\n          local_11c._0_1_ = true;\n          local_11c._1_1_ = false;\n          if (local_130 == 0) {\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            std::string::_M_replace((string *)&in,0,0,".",1);\n          }\n          iVar7._M_current =\n               (this->library_path_).value.\n               super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n               _M_impl._M_finish;\n          if (iVar7._M_current ==\n              (this->library_path_).value.\n              super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n              _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n            _M_realloc_insert<const_gold::Search_directory&>\n                      (&(this->library_path_).value,iVar7,(Search_directory *)&in);\n          }\n          else {\n            ((iVar7._M_current)->name_)._M_dataplus._M_p =\n                 (pointer)&((iVar7._M_current)->name_).field_2;\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n            _M_construct<char*>();\n            (iVar7._M_current)->put_in_sysroot_ = local_11c._0_1_;\n            (iVar7._M_current)->is_in_sysroot_ = local_11c._1_1_;\n            ppSVar3 = &(this->library_path_).value.\n                       super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                       ._M_impl._M_finish;\n            *ppSVar3 = *ppSVar3 + 1;\n          }\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)_in != &local_12c) {\n            operator_delete(_in);\n          }\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)line._M_dataplus._M_p != &line.field_2) {\n            operator_delete(line._M_dataplus._M_p);\n          }\n          if (uVar14 == 0xffffffff) break;\n        }\n        uVar19 = uVar14 + 1;\n      }" { (ERROR "uVar14 = std::" (assignment_expression "uVar14 = std" identifier = identifier) : :) (labeled_statement "string::find((string *)&libpath,':',uVar19);" statement_identifier : (ERROR ":" :) (expression_statement "find((string *)&libpath,':',uVar19);" (call_expression "find((string *)&libpath,':',uVar19)" identifier (argument_list "((string *)&libpath,':',uVar19)" ( (cast_expression "(string *)&libpath" ( (type_descriptor "string *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&libpath" & identifier)) , (char_literal "':'" ' character ') , identifier ))) ;)) (if_statement "if ((uVar14 == 0xffffffff) || (uVar14 != uVar19)) {\n          if (libpath._M_string_length < uVar19) {\n                    /* WARNING: Subroutine does not return */\n            std::__throw_out_of_range_fmt("%s: __pos (which is %zu) > this->size() (which is %zu)");\n          }\n          line._M_dataplus._M_p = (pointer)&line.field_2;\n          std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n          _M_construct<char_const*>();\n          _in = (undefined **)&local_12c;\n                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */\n          std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n          _M_construct<char*>();\n          local_11c._0_1_ = true;\n          local_11c._1_1_ = false;\n          if (local_130 == 0) {\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            std::string::_M_replace((string *)&in,0,0,".",1);\n          }\n          iVar7._M_current =\n               (this->library_path_).value.\n               super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n               _M_impl._M_finish;\n          if (iVar7._M_current ==\n              (this->library_path_).value.\n              super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n              _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n            _M_realloc_insert<const_gold::Search_directory&>\n                      (&(this->library_path_).value,iVar7,(Search_directory *)&in);\n          }\n          else {\n            ((iVar7._M_current)->name_)._M_dataplus._M_p =\n                 (pointer)&((iVar7._M_current)->name_).field_2;\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n            _M_construct<char*>();\n            (iVar7._M_current)->put_in_sysroot_ = local_11c._0_1_;\n            (iVar7._M_current)->is_in_sysroot_ = local_11c._1_1_;\n            ppSVar3 = &(this->library_path_).value.\n                       super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                       ._M_impl._M_finish;\n            *ppSVar3 = *ppSVar3 + 1;\n          }\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)_in != &local_12c) {\n            operator_delete(_in);\n          }\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)line._M_dataplus._M_p != &line.field_2) {\n            operator_delete(line._M_dataplus._M_p);\n          }\n          if (uVar14 == 0xffffffff) break;\n        }" if (parenthesized_expression "((uVar14 == 0xffffffff) || (uVar14 != uVar19))" ( (binary_expression "(uVar14 == 0xffffffff) || (uVar14 != uVar19)" (parenthesized_expression "(uVar14 == 0xffffffff)" ( (binary_expression "uVar14 == 0xffffffff" identifier == number_literal) )) || (parenthesized_expression "(uVar14 != uVar19)" ( (binary_expression "uVar14 != uVar19" identifier != identifier) ))) )) (compound_statement "{\n          if (libpath._M_string_length < uVar19) {\n                    /* WARNING: Subroutine does not return */\n            std::__throw_out_of_range_fmt("%s: __pos (which is %zu) > this->size() (which is %zu)");\n          }\n          line._M_dataplus._M_p = (pointer)&line.field_2;\n          std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n          _M_construct<char_const*>();\n          _in = (undefined **)&local_12c;\n                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */\n          std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n          _M_construct<char*>();\n          local_11c._0_1_ = true;\n          local_11c._1_1_ = false;\n          if (local_130 == 0) {\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            std::string::_M_replace((string *)&in,0,0,".",1);\n          }\n          iVar7._M_current =\n               (this->library_path_).value.\n               super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n               _M_impl._M_finish;\n          if (iVar7._M_current ==\n              (this->library_path_).value.\n              super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n              _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n            _M_realloc_insert<const_gold::Search_directory&>\n                      (&(this->library_path_).value,iVar7,(Search_directory *)&in);\n          }\n          else {\n            ((iVar7._M_current)->name_)._M_dataplus._M_p =\n                 (pointer)&((iVar7._M_current)->name_).field_2;\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n            _M_construct<char*>();\n            (iVar7._M_current)->put_in_sysroot_ = local_11c._0_1_;\n            (iVar7._M_current)->is_in_sysroot_ = local_11c._1_1_;\n            ppSVar3 = &(this->library_path_).value.\n                       super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                       ._M_impl._M_finish;\n            *ppSVar3 = *ppSVar3 + 1;\n          }\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)_in != &local_12c) {\n            operator_delete(_in);\n          }\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)line._M_dataplus._M_p != &line.field_2) {\n            operator_delete(line._M_dataplus._M_p);\n          }\n          if (uVar14 == 0xffffffff) break;\n        }" { (if_statement "if (libpath._M_string_length < uVar19) {\n                    /* WARNING: Subroutine does not return */\n            std::__throw_out_of_range_fmt("%s: __pos (which is %zu) > this->size() (which is %zu)");\n          }" if (parenthesized_expression "(libpath._M_string_length < uVar19)" ( (binary_expression "libpath._M_string_length < uVar19" (field_expression "libpath._M_string_length" identifier . field_identifier) < identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n            std::__throw_out_of_range_fmt("%s: __pos (which is %zu) > this->size() (which is %zu)");\n          }" { comment (labeled_statement "std::__throw_out_of_range_fmt("%s: __pos (which is %zu) > this->size() (which is %zu)");" statement_identifier : (ERROR ":" :) (expression_statement "__throw_out_of_range_fmt("%s: __pos (which is %zu) > this->size() (which is %zu)");" (call_expression "__throw_out_of_range_fmt("%s: __pos (which is %zu) > this->size() (which is %zu)")" identifier (argument_list "("%s: __pos (which is %zu) > this->size() (which is %zu)")" ( (string_literal ""%s: __pos (which is %zu) > this->size() (which is %zu)"" " string_content ") ))) ;)) })) (expression_statement "line._M_dataplus._M_p = (pointer)&line.field_2;" (assignment_expression "line._M_dataplus._M_p = (pointer)&line.field_2" (field_expression "line._M_dataplus._M_p" (field_expression "line._M_dataplus" identifier . field_identifier) . field_identifier) = (binary_expression "(pointer)&line.field_2" (parenthesized_expression "(pointer)" ( identifier )) & (field_expression "line.field_2" identifier . field_identifier))) ;) (labeled_statement "std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n          _M_construct<char_const*>();" statement_identifier (ERROR "::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>:" : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > :) : (expression_statement "_M_construct<char_const*>();" (binary_expression "_M_construct<char_const" identifier < identifier) (ERROR "*>()" * > ( )) ;)) (expression_statement "_in = (undefined **)&local_12c;" (assignment_expression "_in = (undefined **)&local_12c" identifier = (cast_expression "(undefined **)&local_12c" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&local_12c" & identifier))) ;) comment (labeled_statement "std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n          _M_construct<char*>();" statement_identifier (ERROR "::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>:" : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > :) : (expression_statement "_M_construct<char*>();" (binary_expression "_M_construct<char" identifier < identifier) (ERROR "*>()" * > ( )) ;)) (expression_statement "local_11c._0_1_ = true;" (assignment_expression "local_11c._0_1_ = true" (field_expression "local_11c._0_1_" identifier . field_identifier) = true) ;) (expression_statement "local_11c._1_1_ = false;" (assignment_expression "local_11c._1_1_ = false" (field_expression "local_11c._1_1_" identifier . field_identifier) = false) ;) (if_statement "if (local_130 == 0) {\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            std::string::_M_replace((string *)&in,0,0,".",1);\n          }" if (parenthesized_expression "(local_130 == 0)" ( (binary_expression "local_130 == 0" identifier == number_literal) )) (compound_statement "{\n                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */\n            std::string::_M_replace((string *)&in,0,0,".",1);\n          }" { comment (labeled_statement "std::string::_M_replace((string *)&in,0,0,".",1);" statement_identifier : (ERROR ":" :) (labeled_statement "string::_M_replace((string *)&in,0,0,".",1);" statement_identifier : (ERROR ":" :) (expression_statement "_M_replace((string *)&in,0,0,".",1);" (call_expression "_M_replace((string *)&in,0,0,".",1)" identifier (argument_list "((string *)&in,0,0,".",1)" ( (cast_expression "(string *)&in" ( (type_descriptor "string *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&in" & identifier)) , number_literal , number_literal , (string_literal ""."" " string_content ") , number_literal ))) ;))) })) (ERROR "iVar7._M_current =\n               (this->library_path_).value.\n               super__Vector_base<gold::Search_directory,_std::allocator<gold::" (comma_expression "iVar7._M_current =\n               (this->library_path_).value.\n               super__Vector_base<gold::Search_directory,_std" (assignment_expression "iVar7._M_current =\n               (this->library_path_).value.\n               super__Vector_base<gold" (field_expression "iVar7._M_current" identifier . field_identifier) = (binary_expression "(this->library_path_).value.\n               super__Vector_base<gold" (field_expression "(this->library_path_).value.\n               super__Vector_base" (field_expression "(this->library_path_).value" (parenthesized_expression "(this->library_path_)" ( (field_expression "this->library_path_" identifier -> field_identifier) )) . field_identifier) . field_identifier) < identifier)) (ERROR "::Search_directory" : : identifier) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Search_directory>_>.\n               _M_impl._M_finish;" (field_expression "Search_directory>_>.\n               _M_impl._M_finish" (field_expression "Search_directory>_>.\n               _M_impl" (binary_expression "Search_directory>_" identifier > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (if_statement "if (iVar7._M_current ==\n              (this->library_path_).value.\n              super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n              _M_impl._M_end_of_storage) {\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n            _M_realloc_insert<const_gold::Search_directory&>\n                      (&(this->library_path_).value,iVar7,(Search_directory *)&in);\n          }\n          else {\n            ((iVar7._M_current)->name_)._M_dataplus._M_p =\n                 (pointer)&((iVar7._M_current)->name_).field_2;\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n            _M_construct<char*>();\n            (iVar7._M_current)->put_in_sysroot_ = local_11c._0_1_;\n            (iVar7._M_current)->is_in_sysroot_ = local_11c._1_1_;\n            ppSVar3 = &(this->library_path_).value.\n                       super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                       ._M_impl._M_finish;\n            *ppSVar3 = *ppSVar3 + 1;\n          }" if (parenthesized_expression "(iVar7._M_current ==\n              (this->library_path_).value.\n              super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>.\n              _M_impl._M_end_of_storage)" ( (ERROR "iVar7._M_current ==\n              (this->library_path_).value.\n              super__Vector_base<gold::Search_directory,_std::allocator<gold::" (comma_expression "iVar7._M_current ==\n              (this->library_path_).value.\n              super__Vector_base<gold::Search_directory,_std" (binary_expression "iVar7._M_current ==\n              (this->library_path_).value.\n              super__Vector_base<gold" (field_expression "iVar7._M_current" identifier . field_identifier) == (binary_expression "(this->library_path_).value.\n              super__Vector_base<gold" (field_expression "(this->library_path_).value.\n              super__Vector_base" (field_expression "(this->library_path_).value" (parenthesized_expression "(this->library_path_)" ( (field_expression "this->library_path_" identifier -> field_identifier) )) . field_identifier) . field_identifier) < identifier)) (ERROR "::Search_directory" : : identifier) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : :) (field_expression "Search_directory>_>.\n              _M_impl._M_end_of_storage" (field_expression "Search_directory>_>.\n              _M_impl" (binary_expression "Search_directory>_" identifier > identifier) (ERROR ">" >) . field_identifier) . field_identifier) )) (compound_statement "{\n                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */\n            std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n            _M_realloc_insert<const_gold::Search_directory&>\n                      (&(this->library_path_).value,iVar7,(Search_directory *)&in);\n          }" { comment (labeled_statement "std::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n            _M_realloc_insert<const_gold::Search_directory&>\n                      (&(this->library_path_).value,iVar7,(Search_directory *)&in);" statement_identifier (ERROR "::vector<gold::Search_directory,_std::allocator<gold::Search_directory>_>::\n            _M_realloc_insert<const_gold:" : : (binary_expression "vector<gold" identifier < identifier) : : (comma_expression "Search_directory,_std" identifier , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : : (binary_expression "Search_directory>_" identifier > identifier) > : : (binary_expression "_M_realloc_insert<const_gold" identifier < identifier) :) : (expression_statement "Search_directory&>\n                      (&(this->library_path_).value,iVar7,(Search_directory *)&in);" (binary_expression "Search_directory&>\n                      (&(this->library_path_).value,iVar7,(Search_directory *)&in)" identifier (ERROR "&" &) > (parenthesized_expression "(&(this->library_path_).value,iVar7,(Search_directory *)&in)" ( (comma_expression "&(this->library_path_).value,iVar7,(Search_directory *)&in" (pointer_expression "&(this->library_path_).value" & (field_expression "(this->library_path_).value" (parenthesized_expression "(this->library_path_)" ( (field_expression "this->library_path_" identifier -> field_identifier) )) . field_identifier)) , (comma_expression "iVar7,(Search_directory *)&in" identifier , (cast_expression "(Search_directory *)&in" ( (type_descriptor "Search_directory *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&in" & identifier)))) ))) ;)) }) (else_clause "else {\n            ((iVar7._M_current)->name_)._M_dataplus._M_p =\n                 (pointer)&((iVar7._M_current)->name_).field_2;\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n            _M_construct<char*>();\n            (iVar7._M_current)->put_in_sysroot_ = local_11c._0_1_;\n            (iVar7._M_current)->is_in_sysroot_ = local_11c._1_1_;\n            ppSVar3 = &(this->library_path_).value.\n                       super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                       ._M_impl._M_finish;\n            *ppSVar3 = *ppSVar3 + 1;\n          }" else (compound_statement "{\n            ((iVar7._M_current)->name_)._M_dataplus._M_p =\n                 (pointer)&((iVar7._M_current)->name_).field_2;\n                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */\n            std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n            _M_construct<char*>();\n            (iVar7._M_current)->put_in_sysroot_ = local_11c._0_1_;\n            (iVar7._M_current)->is_in_sysroot_ = local_11c._1_1_;\n            ppSVar3 = &(this->library_path_).value.\n                       super__Vector_base<gold::Search_directory,_std::allocator<gold::Search_directory>_>\n                       ._M_impl._M_finish;\n            *ppSVar3 = *ppSVar3 + 1;\n          }" { (expression_statement "((iVar7._M_current)->name_)._M_dataplus._M_p =\n                 (pointer)&((iVar7._M_current)->name_).field_2;" (assignment_expression "((iVar7._M_current)->name_)._M_dataplus._M_p =\n                 (pointer)&((iVar7._M_current)->name_).field_2" (field_expression "((iVar7._M_current)->name_)._M_dataplus._M_p" (field_expression "((iVar7._M_current)->name_)._M_dataplus" (parenthesized_expression "((iVar7._M_current)->name_)" ( (field_expression "(iVar7._M_current)->name_" (parenthesized_expression "(iVar7._M_current)" ( (field_expression "iVar7._M_current" identifier . field_identifier) )) -> field_identifier) )) . field_identifier) . field_identifier) = (binary_expression "(pointer)&((iVar7._M_current)->name_).field_2" (parenthesized_expression "(pointer)" ( identifier )) & (field_expression "((iVar7._M_current)->name_).field_2" (parenthesized_expression "((iVar7._M_current)->name_)" ( (field_expression "(iVar7._M_current)->name_" (parenthesized_expression "(iVar7._M_current)" ( (field_expression "iVar7._M_current" identifier . field_identifier) )) -> field_identifier) )) . field_identifier))) ;) comment (labeled_statement "std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n            _M_construct<char*>();" statement_identifier (ERROR "::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>:" : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > :) : (expression_statement "_M_construct<char*>();" (binary_expression "_M_construct<char" identifier < identifier) (ERROR "*>()" * > ( )) ;)) (expression_statement "(iVar7._M_current)->put_in_sysroot_ = local_11c._0_1_;" (assignment_expression "(iVar7._M_current)->put_in_sysroot_ = local_11c._0_1_" (field_expression "(iVar7._M_current)->put_in_sysroot_" (parenthesized_expression "(iVar7._M_current)" ( (field_expression "iVar7._M_current" identifier . field_identifier) )) -> field_identifier) = (field_expression "local_11c._0_1_" identifier . field_identifier)) ;) (expression_statement "(iVar7._M_current)->is_in_sysroot_ = local_11c._1_1_;" (assignment_expression "(iVar7._M_current)->is_in_sysroot_ = local_11c._1_1_" (field_expression "(iVar7._M_current)->is_in_sysroot_" (parenthesized_expression "(iVar7._M_current)" ( (field_expression "iVar7._M_current" identifier . field_identifier) )) -> field_identifier) = (field_expression "local_11c._1_1_" identifier . field_identifier)) ;) (ERROR "ppSVar3 = &(this->library_path_).value.\n                       super__Vector_base<gold::Search_directory,_std::allocator<gold::" (comma_expression "ppSVar3 = &(this->library_path_).value.\n                       super__Vector_base<gold::Search_directory,_std" (assignment_expression "ppSVar3 = &(this->library_path_).value.\n                       super__Vector_base<gold" identifier = (binary_expression "&(this->library_path_).value.\n                       super__Vector_base<gold" (pointer_expression "&(this->library_path_).value.\n                       super__Vector_base" & (field_expression "(this->library_path_).value.\n                       super__Vector_base" (field_expression "(this->library_path_).value" (parenthesized_expression "(this->library_path_)" ( (field_expression "this->library_path_" identifier -> field_identifier) )) . field_identifier) . field_identifier)) < identifier)) (ERROR "::Search_directory" : : identifier) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Search_directory>_>\n                       ._M_impl._M_finish;" (field_expression "Search_directory>_>\n                       ._M_impl._M_finish" (field_expression "Search_directory>_>\n                       ._M_impl" (binary_expression "Search_directory>_" identifier > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "*ppSVar3 = *ppSVar3 + 1;" (assignment_expression "*ppSVar3 = *ppSVar3 + 1" (pointer_expression "*ppSVar3" * identifier) = (binary_expression "*ppSVar3 + 1" (pointer_expression "*ppSVar3" * identifier) + number_literal)) ;) }))) (if_statement "if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)_in != &local_12c) {\n            operator_delete(_in);\n          }" if (parenthesized_expression "((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)_in != &local_12c)" ( (parenthesized_expression "(anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)_in != &local_12c)" ( (ERROR "anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::" (comma_expression "anon_union_16_2_edb7204a_for_basic_string<char,_std" (binary_expression "anon_union_16_2_edb7204a_for_basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : :) (binary_expression "allocator<char>_>_9\n               *)_in != &local_12c" (binary_expression "allocator<char>_>_9\n               *)_in" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (binary_expression "_9\n               *)_in" identifier * (ERROR ")" )) identifier)) != (pointer_expression "&local_12c" & identifier)) )) )) (compound_statement "{\n            operator_delete(_in);\n          }" { (expression_statement "operator_delete(_in);" (call_expression "operator_delete(_in)" identifier (argument_list "(_in)" ( identifier ))) ;) })) (if_statement "if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)line._M_dataplus._M_p != &line.field_2) {\n            operator_delete(line._M_dataplus._M_p);\n          }" if (parenthesized_expression "((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)line._M_dataplus._M_p != &line.field_2)" ( (parenthesized_expression "(anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)line._M_dataplus._M_p != &line.field_2)" ( (ERROR "anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::" (comma_expression "anon_union_16_2_edb7204a_for_basic_string<char,_std" (binary_expression "anon_union_16_2_edb7204a_for_basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : :) (binary_expression "allocator<char>_>_9\n               *)line._M_dataplus._M_p != &line.field_2" (binary_expression "allocator<char>_>_9\n               *)line._M_dataplus._M_p" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (binary_expression "_9\n               *)line._M_dataplus._M_p" identifier * (ERROR ")" )) (field_expression "line._M_dataplus._M_p" (field_expression "line._M_dataplus" identifier . field_identifier) . field_identifier))) != (pointer_expression "&line.field_2" & (field_expression "line.field_2" identifier . field_identifier))) )) )) (compound_statement "{\n            operator_delete(line._M_dataplus._M_p);\n          }" { (expression_statement "operator_delete(line._M_dataplus._M_p);" (call_expression "operator_delete(line._M_dataplus._M_p)" identifier (argument_list "(line._M_dataplus._M_p)" ( (field_expression "line._M_dataplus._M_p" (field_expression "line._M_dataplus" identifier . field_identifier) . field_identifier) ))) ;) })) (if_statement "if (uVar14 == 0xffffffff) break;" if (parenthesized_expression "(uVar14 == 0xffffffff)" ( (binary_expression "uVar14 == 0xffffffff" identifier == number_literal) )) (break_statement "break;" break ;)) })) (expression_statement "uVar19 = uVar14 + 1;" (assignment_expression "uVar19 = uVar14 + 1" identifier = (binary_expression "uVar14 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "( true )" ( true )) ;) })) }))) (if_statement "if ((this->retain_symbols_file_).value != (char *)0x0) {\n    std::ios_base::ios_base((ios_base *)local_a4);\n    puVar9 = PTR_DAT_0038c8a0;\n    puVar8 = PTR_DAT_0038c89c;\n    local_34 = 0;\n    local_2c = 0;\n    local_a4[0] = &PTR__ios_0038c7b8;\n    local_30 = 0;\n    local_28 = 0;\n    paVar5 = (anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n              *)PTR_DAT_0038c89c;\n    local_24 = 0;\n    local_20 = 0;\n    _in = (undefined **)paVar5;\n    *(undefined **)(&in + *(int *)(PTR_DAT_0038c89c + -0xc)) = PTR_DAT_0038c8a0;\n                    /* try { // try from 000e77b7 to 000e77bb has its CatchHandler @ 000e8b92 */\n    std::ios::init((ios *)((istream *)&in + *(int *)(PTR_DAT_0038c89c + -0xc)),(streambuf *)0x0);\n    _in = &PTR__ifstream_0038c8b4;\n    local_a4[0] = &PTR__ifstream_0038c8c8;\n                    /* try { // try from 000e77e9 to 000e77ed has its CatchHandler @ 000e8b84 */\n    std::filebuf::filebuf((filebuf *)local_12c._M_local_buf);\n                    /* try { // try from 000e77f7 to 000e77fb has its CatchHandler @ 000e8b29 */\n    std::ios::init((ios *)local_a4,(streambuf *)local_12c._M_local_buf);\n                    /* try { // try from 000e780b to 000e783a has its CatchHandler @ 000e8b30 */\n    iVar17 = std::filebuf::open((filebuf *)local_12c._M_local_buf,(this->retain_symbols_file_).value\n                                ,_S_in);\n    this_01 = (ios *)((istream *)&in + (int)*(undefined **)((int)_in + -0xc));\n    if (iVar17 == 0) {\n                    /* try { // try from 000e8751 to 000e8755 has its CatchHandler @ 000e8b30 */\n      std::ios::clear(this_01,*(_Ios_Iostate *)\n                               (*(undefined **)((int)_in + -0xc) + (int)&local_12c + 0xc) |\n                              _S_failbit);\n    }\n    else {\n      std::ios::clear(this_01,_S_goodbit);\n    }\n    if ((local_90 & 5) != 0) {\n      piVar16 = __errno_location();\n      strerror(*piVar16);\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8a0c to 000e8a10 has its CatchHandler @ 000e8b30 */\n      gold_fatal(pcVar15);\n    }\n    paVar2 = &line.field_2;\n    line.field_2._M_local_buf[0] = '\0';\n    line._M_string_length = 0;\n    pcVar6 = *(ctype<char> **)((int)auStack_b8 + (int)*(undefined **)((int)_in + -0xc));\n    line._M_dataplus._M_p = (pointer)paVar2;\n    if (pcVar6 == (ctype<char> *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8af0 to 000e8af4 has its CatchHandler @ 000e8b8b */\n      std::__throw_bad_cast();\n    }\n    if (pcVar6[0x1c] == (ctype<char>)0x0) {\n                    /* try { // try from 000e80ec to 000e8113 has its CatchHandler @ 000e8b8b */\n      std::ctype<char>::_M_widen_init(pcVar6);\n      cVar10 = (ctype<char>)0xa;\n      if (*(code **)(*(int *)pcVar6 + 0x18) != std::ctype<char>::do_widen) {\n        cVar10 = (ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))();\n      }\n    }\n    else {\n      cVar10 = pcVar6[0x27];\n    }\n                    /* try { // try from 000e78b1 to 000e78f6 has its CatchHandler @ 000e8b8b */\n    std::getline<char,std::char_traits<char>,std::allocator<char>>\n              ((istream *)&in,(string *)&line,(char)cVar10);\n    while ((local_90 & 5) == 0) {\n      if ((line._M_string_length != 0) && (line._M_dataplus._M_p[line._M_string_length - 1] == '\r')\n         ) {\n                    /* try { // try from 000e7e32 to 000e7e36 has its CatchHandler @ 000e8b8b */\n        std::string::resize((string *)&line,line._M_string_length - 1,'\0');\n      }\n      __node = (__node_type *)\n               std::_Hash_bytes(line._M_dataplus._M_p,line._M_string_length,0xc70f6907);\n      uVar19 = (uint)__node % (this->symbols_to_retain_)._M_h._M_bucket_count;\n      p_Var11 = std::\n                _Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                ::_M_find_before_node\n                          (&(this->symbols_to_retain_)._M_h,uVar19,&line,(__hash_code)__node);\n      if ((p_Var11 == (__node_base *)0x0) || (p_Var11->_M_nxt == (_Hash_node_base *)0x0)) {\n                    /* try { // try from 000e7a7b to 000e7a7f has its CatchHandler @ 000e8b8b */\n        __n_elt = (undefined4 *)operator_new(0x20);\n        *__n_elt = 0;\n        __n_elt[1] = __n_elt + 3;\n                    /* try { // try from 000e7aa7 to 000e7aab has its CatchHandler @ 000e8b99 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n                    /* try { // try from 000e7ac4 to 000e7ac8 has its CatchHandler @ 000e8b8b */\n        std::\n        _Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n        ::_M_insert_unique_node\n                  ((_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                    *)local_1c0,(size_type)&this->symbols_to_retain_,uVar19,__node,\n                   (size_type)__n_elt);\n      }\n      pcVar6 = *(ctype<char> **)((int)auStack_b8 + (int)*(undefined **)((int)_in + -0xc));\n      if (pcVar6 == (ctype<char> *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88aa to 000e88ae has its CatchHandler @ 000e8b8b */\n        std::__throw_bad_cast();\n      }\n      if (pcVar6[0x1c] == (ctype<char>)0x0) {\n                    /* try { // try from 000e79a3 to 000e79ca has its CatchHandler @ 000e8b8b */\n        std::ctype<char>::_M_widen_init(pcVar6);\n        cVar10 = (ctype<char>)0xa;\n        if (*(code **)(*(int *)pcVar6 + 0x18) != std::ctype<char>::do_widen) {\n          cVar10 = (ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))();\n        }\n      }\n      else {\n        cVar10 = pcVar6[0x27];\n      }\n      std::getline<char,std::char_traits<char>,std::allocator<char>>\n                ((istream *)&in,(string *)&line,(char)cVar10);\n    }\n    if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n         *)line._M_dataplus._M_p != paVar2) {\n      operator_delete(line._M_dataplus._M_p);\n    }\n    _in = &PTR__ifstream_0038c8b4;\n    local_a4[0] = &PTR__ifstream_0038c8c8;\n    local_12c._M_allocated_capacity = (size_type)&PTR__filebuf_0038c838;\n    std::filebuf::close((filebuf *)local_12c._M_local_buf);\n    std::__basic_file<char>::~__basic_file(local_f4);\n    local_12c._M_allocated_capacity = (size_type)&PTR__streambuf_0038c0a4;\n    std::locale::~locale(local_110);\n    _in = (undefined **)paVar5;\n    *(undefined **)(&in + *(int *)(puVar8 + -0xc)) = puVar9;\n    local_a4[0] = &PTR__ios_0038c7b8;\n    std::ios_base::~ios_base((ios_base *)local_a4);\n  }" if (parenthesized_expression "((this->retain_symbols_file_).value != (char *)0x0)" ( (binary_expression "(this->retain_symbols_file_).value != (char *)0x0" (field_expression "(this->retain_symbols_file_).value" (parenthesized_expression "(this->retain_symbols_file_)" ( (field_expression "this->retain_symbols_file_" identifier -> field_identifier) )) . field_identifier) != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    std::ios_base::ios_base((ios_base *)local_a4);\n    puVar9 = PTR_DAT_0038c8a0;\n    puVar8 = PTR_DAT_0038c89c;\n    local_34 = 0;\n    local_2c = 0;\n    local_a4[0] = &PTR__ios_0038c7b8;\n    local_30 = 0;\n    local_28 = 0;\n    paVar5 = (anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n              *)PTR_DAT_0038c89c;\n    local_24 = 0;\n    local_20 = 0;\n    _in = (undefined **)paVar5;\n    *(undefined **)(&in + *(int *)(PTR_DAT_0038c89c + -0xc)) = PTR_DAT_0038c8a0;\n                    /* try { // try from 000e77b7 to 000e77bb has its CatchHandler @ 000e8b92 */\n    std::ios::init((ios *)((istream *)&in + *(int *)(PTR_DAT_0038c89c + -0xc)),(streambuf *)0x0);\n    _in = &PTR__ifstream_0038c8b4;\n    local_a4[0] = &PTR__ifstream_0038c8c8;\n                    /* try { // try from 000e77e9 to 000e77ed has its CatchHandler @ 000e8b84 */\n    std::filebuf::filebuf((filebuf *)local_12c._M_local_buf);\n                    /* try { // try from 000e77f7 to 000e77fb has its CatchHandler @ 000e8b29 */\n    std::ios::init((ios *)local_a4,(streambuf *)local_12c._M_local_buf);\n                    /* try { // try from 000e780b to 000e783a has its CatchHandler @ 000e8b30 */\n    iVar17 = std::filebuf::open((filebuf *)local_12c._M_local_buf,(this->retain_symbols_file_).value\n                                ,_S_in);\n    this_01 = (ios *)((istream *)&in + (int)*(undefined **)((int)_in + -0xc));\n    if (iVar17 == 0) {\n                    /* try { // try from 000e8751 to 000e8755 has its CatchHandler @ 000e8b30 */\n      std::ios::clear(this_01,*(_Ios_Iostate *)\n                               (*(undefined **)((int)_in + -0xc) + (int)&local_12c + 0xc) |\n                              _S_failbit);\n    }\n    else {\n      std::ios::clear(this_01,_S_goodbit);\n    }\n    if ((local_90 & 5) != 0) {\n      piVar16 = __errno_location();\n      strerror(*piVar16);\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8a0c to 000e8a10 has its CatchHandler @ 000e8b30 */\n      gold_fatal(pcVar15);\n    }\n    paVar2 = &line.field_2;\n    line.field_2._M_local_buf[0] = '\0';\n    line._M_string_length = 0;\n    pcVar6 = *(ctype<char> **)((int)auStack_b8 + (int)*(undefined **)((int)_in + -0xc));\n    line._M_dataplus._M_p = (pointer)paVar2;\n    if (pcVar6 == (ctype<char> *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8af0 to 000e8af4 has its CatchHandler @ 000e8b8b */\n      std::__throw_bad_cast();\n    }\n    if (pcVar6[0x1c] == (ctype<char>)0x0) {\n                    /* try { // try from 000e80ec to 000e8113 has its CatchHandler @ 000e8b8b */\n      std::ctype<char>::_M_widen_init(pcVar6);\n      cVar10 = (ctype<char>)0xa;\n      if (*(code **)(*(int *)pcVar6 + 0x18) != std::ctype<char>::do_widen) {\n        cVar10 = (ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))();\n      }\n    }\n    else {\n      cVar10 = pcVar6[0x27];\n    }\n                    /* try { // try from 000e78b1 to 000e78f6 has its CatchHandler @ 000e8b8b */\n    std::getline<char,std::char_traits<char>,std::allocator<char>>\n              ((istream *)&in,(string *)&line,(char)cVar10);\n    while ((local_90 & 5) == 0) {\n      if ((line._M_string_length != 0) && (line._M_dataplus._M_p[line._M_string_length - 1] == '\r')\n         ) {\n                    /* try { // try from 000e7e32 to 000e7e36 has its CatchHandler @ 000e8b8b */\n        std::string::resize((string *)&line,line._M_string_length - 1,'\0');\n      }\n      __node = (__node_type *)\n               std::_Hash_bytes(line._M_dataplus._M_p,line._M_string_length,0xc70f6907);\n      uVar19 = (uint)__node % (this->symbols_to_retain_)._M_h._M_bucket_count;\n      p_Var11 = std::\n                _Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                ::_M_find_before_node\n                          (&(this->symbols_to_retain_)._M_h,uVar19,&line,(__hash_code)__node);\n      if ((p_Var11 == (__node_base *)0x0) || (p_Var11->_M_nxt == (_Hash_node_base *)0x0)) {\n                    /* try { // try from 000e7a7b to 000e7a7f has its CatchHandler @ 000e8b8b */\n        __n_elt = (undefined4 *)operator_new(0x20);\n        *__n_elt = 0;\n        __n_elt[1] = __n_elt + 3;\n                    /* try { // try from 000e7aa7 to 000e7aab has its CatchHandler @ 000e8b99 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n                    /* try { // try from 000e7ac4 to 000e7ac8 has its CatchHandler @ 000e8b8b */\n        std::\n        _Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n        ::_M_insert_unique_node\n                  ((_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                    *)local_1c0,(size_type)&this->symbols_to_retain_,uVar19,__node,\n                   (size_type)__n_elt);\n      }\n      pcVar6 = *(ctype<char> **)((int)auStack_b8 + (int)*(undefined **)((int)_in + -0xc));\n      if (pcVar6 == (ctype<char> *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88aa to 000e88ae has its CatchHandler @ 000e8b8b */\n        std::__throw_bad_cast();\n      }\n      if (pcVar6[0x1c] == (ctype<char>)0x0) {\n                    /* try { // try from 000e79a3 to 000e79ca has its CatchHandler @ 000e8b8b */\n        std::ctype<char>::_M_widen_init(pcVar6);\n        cVar10 = (ctype<char>)0xa;\n        if (*(code **)(*(int *)pcVar6 + 0x18) != std::ctype<char>::do_widen) {\n          cVar10 = (ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))();\n        }\n      }\n      else {\n        cVar10 = pcVar6[0x27];\n      }\n      std::getline<char,std::char_traits<char>,std::allocator<char>>\n                ((istream *)&in,(string *)&line,(char)cVar10);\n    }\n    if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n         *)line._M_dataplus._M_p != paVar2) {\n      operator_delete(line._M_dataplus._M_p);\n    }\n    _in = &PTR__ifstream_0038c8b4;\n    local_a4[0] = &PTR__ifstream_0038c8c8;\n    local_12c._M_allocated_capacity = (size_type)&PTR__filebuf_0038c838;\n    std::filebuf::close((filebuf *)local_12c._M_local_buf);\n    std::__basic_file<char>::~__basic_file(local_f4);\n    local_12c._M_allocated_capacity = (size_type)&PTR__streambuf_0038c0a4;\n    std::locale::~locale(local_110);\n    _in = (undefined **)paVar5;\n    *(undefined **)(&in + *(int *)(puVar8 + -0xc)) = puVar9;\n    local_a4[0] = &PTR__ios_0038c7b8;\n    std::ios_base::~ios_base((ios_base *)local_a4);\n  }" { (labeled_statement "std::ios_base::ios_base((ios_base *)local_a4);" statement_identifier : (ERROR ":" :) (labeled_statement "ios_base::ios_base((ios_base *)local_a4);" statement_identifier : (ERROR ":" :) (expression_statement "ios_base((ios_base *)local_a4);" (call_expression "ios_base((ios_base *)local_a4)" identifier (argument_list "((ios_base *)local_a4)" ( (cast_expression "(ios_base *)local_a4" ( (type_descriptor "ios_base *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;))) (expression_statement "puVar9 = PTR_DAT_0038c8a0;" (assignment_expression "puVar9 = PTR_DAT_0038c8a0" identifier = identifier) ;) (expression_statement "puVar8 = PTR_DAT_0038c89c;" (assignment_expression "puVar8 = PTR_DAT_0038c89c" identifier = identifier) ;) (expression_statement "local_34 = 0;" (assignment_expression "local_34 = 0" identifier = number_literal) ;) (expression_statement "local_2c = 0;" (assignment_expression "local_2c = 0" identifier = number_literal) ;) (expression_statement "local_a4[0] = &PTR__ios_0038c7b8;" (assignment_expression "local_a4[0] = &PTR__ios_0038c7b8" (subscript_expression "local_a4[0]" identifier [ number_literal ]) = (pointer_expression "&PTR__ios_0038c7b8" & identifier)) ;) (expression_statement "local_30 = 0;" (assignment_expression "local_30 = 0" identifier = number_literal) ;) (expression_statement "local_28 = 0;" (assignment_expression "local_28 = 0" identifier = number_literal) ;) (expression_statement "paVar5 = (anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n              *)PTR_DAT_0038c89c;\n    local_24 = 0;\n    local_20 = 0;\n    _in = (undefined **)paVar5;" (assignment_expression "paVar5 = (anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n              *)PTR_DAT_0038c89c;\n    local_24 = 0;\n    local_20 = 0;\n    _in = (undefined **)paVar5" identifier = (parenthesized_expression "(anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n              *)PTR_DAT_0038c89c;\n    local_24 = 0;\n    local_20 = 0;\n    _in = (undefined **)paVar5" ( (ERROR "anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n              *)PTR_DAT_0038c89c;\n    local_24 = 0;\n    local_20 = 0;" (comma_expression "anon_union_16_2_edb7204a_for_basic_string<char,_std" (binary_expression "anon_union_16_2_edb7204a_for_basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>_9\n              *)PTR_DAT_0038c89c" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (binary_expression "_9\n              *)PTR_DAT_0038c89c" identifier * (ERROR ")" )) identifier)) ; (assignment_expression "local_24 = 0" identifier = number_literal) ; (assignment_expression "local_20 = 0" identifier = number_literal) ;) (assignment_expression "_in = (undefined **)paVar5" identifier = (cast_expression "(undefined **)paVar5" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) (expression_statement "*(undefined **)(&in + *(int *)(PTR_DAT_0038c89c + -0xc)) = PTR_DAT_0038c8a0;" (assignment_expression "*(undefined **)(&in + *(int *)(PTR_DAT_0038c89c + -0xc)) = PTR_DAT_0038c8a0" (pointer_expression "*(undefined **)(&in + *(int *)(PTR_DAT_0038c89c + -0xc))" * (cast_expression "(undefined **)(&in + *(int *)(PTR_DAT_0038c89c + -0xc))" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&in + *(int *)(PTR_DAT_0038c89c + -0xc))" ( (binary_expression "&in + *(int *)(PTR_DAT_0038c89c + -0xc)" (pointer_expression "&in" & identifier) + (pointer_expression "*(int *)(PTR_DAT_0038c89c + -0xc)" * (cast_expression "(int *)(PTR_DAT_0038c89c + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_0038c89c + -0xc)" ( (binary_expression "PTR_DAT_0038c89c + -0xc" identifier + number_literal) ))))) )))) = identifier) ;) comment (labeled_statement "std::ios::init((ios *)((istream *)&in + *(int *)(PTR_DAT_0038c89c + -0xc)),(streambuf *)0x0);" statement_identifier : (ERROR ":" :) (labeled_statement "ios::init((ios *)((istream *)&in + *(int *)(PTR_DAT_0038c89c + -0xc)),(streambuf *)0x0);" statement_identifier : (ERROR ":" :) (expression_statement "init((ios *)((istream *)&in + *(int *)(PTR_DAT_0038c89c + -0xc)),(streambuf *)0x0);" (call_expression "init((ios *)((istream *)&in + *(int *)(PTR_DAT_0038c89c + -0xc)),(streambuf *)0x0)" identifier (argument_list "((ios *)((istream *)&in + *(int *)(PTR_DAT_0038c89c + -0xc)),(streambuf *)0x0)" ( (cast_expression "(ios *)((istream *)&in + *(int *)(PTR_DAT_0038c89c + -0xc))" ( (type_descriptor "ios *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((istream *)&in + *(int *)(PTR_DAT_0038c89c + -0xc))" ( (binary_expression "(istream *)&in + *(int *)(PTR_DAT_0038c89c + -0xc)" (cast_expression "(istream *)&in" ( (type_descriptor "istream *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&in" & identifier)) + (pointer_expression "*(int *)(PTR_DAT_0038c89c + -0xc)" * (cast_expression "(int *)(PTR_DAT_0038c89c + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_0038c89c + -0xc)" ( (binary_expression "PTR_DAT_0038c89c + -0xc" identifier + number_literal) ))))) ))) , (cast_expression "(streambuf *)0x0" ( (type_descriptor "streambuf *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) ))) ;))) (expression_statement "_in = &PTR__ifstream_0038c8b4;" (assignment_expression "_in = &PTR__ifstream_0038c8b4" identifier = (pointer_expression "&PTR__ifstream_0038c8b4" & identifier)) ;) (expression_statement "local_a4[0] = &PTR__ifstream_0038c8c8;" (assignment_expression "local_a4[0] = &PTR__ifstream_0038c8c8" (subscript_expression "local_a4[0]" identifier [ number_literal ]) = (pointer_expression "&PTR__ifstream_0038c8c8" & identifier)) ;) comment (labeled_statement "std::filebuf::filebuf((filebuf *)local_12c._M_local_buf);" statement_identifier : (ERROR ":" :) (labeled_statement "filebuf::filebuf((filebuf *)local_12c._M_local_buf);" statement_identifier : (ERROR ":" :) (expression_statement "filebuf((filebuf *)local_12c._M_local_buf);" (call_expression "filebuf((filebuf *)local_12c._M_local_buf)" identifier (argument_list "((filebuf *)local_12c._M_local_buf)" ( (cast_expression "(filebuf *)local_12c._M_local_buf" ( (type_descriptor "filebuf *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_12c._M_local_buf" identifier . field_identifier)) ))) ;))) comment (labeled_statement "std::ios::init((ios *)local_a4,(streambuf *)local_12c._M_local_buf);" statement_identifier : (ERROR ":" :) (labeled_statement "ios::init((ios *)local_a4,(streambuf *)local_12c._M_local_buf);" statement_identifier : (ERROR ":" :) (expression_statement "init((ios *)local_a4,(streambuf *)local_12c._M_local_buf);" (call_expression "init((ios *)local_a4,(streambuf *)local_12c._M_local_buf)" identifier (argument_list "((ios *)local_a4,(streambuf *)local_12c._M_local_buf)" ( (cast_expression "(ios *)local_a4" ( (type_descriptor "ios *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(streambuf *)local_12c._M_local_buf" ( (type_descriptor "streambuf *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_12c._M_local_buf" identifier . field_identifier)) ))) ;))) comment (ERROR "iVar17 = std::" (assignment_expression "iVar17 = std" identifier = identifier) : :) (labeled_statement "filebuf::open((filebuf *)local_12c._M_local_buf,(this->retain_symbols_file_).value\n                                ,_S_in);" statement_identifier : (ERROR ":" :) (expression_statement "open((filebuf *)local_12c._M_local_buf,(this->retain_symbols_file_).value\n                                ,_S_in);" (call_expression "open((filebuf *)local_12c._M_local_buf,(this->retain_symbols_file_).value\n                                ,_S_in)" identifier (argument_list "((filebuf *)local_12c._M_local_buf,(this->retain_symbols_file_).value\n                                ,_S_in)" ( (cast_expression "(filebuf *)local_12c._M_local_buf" ( (type_descriptor "filebuf *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_12c._M_local_buf" identifier . field_identifier)) , (field_expression "(this->retain_symbols_file_).value" (parenthesized_expression "(this->retain_symbols_file_)" ( (field_expression "this->retain_symbols_file_" identifier -> field_identifier) )) . field_identifier) , identifier ))) ;)) (expression_statement "this_01 = (ios *)((istream *)&in + (int)*(undefined **)((int)_in + -0xc));" (assignment_expression "this_01 = (ios *)((istream *)&in + (int)*(undefined **)((int)_in + -0xc))" identifier = (cast_expression "(ios *)((istream *)&in + (int)*(undefined **)((int)_in + -0xc))" ( (type_descriptor "ios *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((istream *)&in + (int)*(undefined **)((int)_in + -0xc))" ( (binary_expression "(istream *)&in + (int)*(undefined **)((int)_in + -0xc)" (cast_expression "(istream *)&in" ( (type_descriptor "istream *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&in" & identifier)) + (cast_expression "(int)*(undefined **)((int)_in + -0xc)" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*(undefined **)((int)_in + -0xc)" * (cast_expression "(undefined **)((int)_in + -0xc)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)_in + -0xc)" ( (binary_expression "(int)_in + -0xc" (cast_expression "(int)_in" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))))) )))) ;) (if_statement "if (iVar17 == 0) {\n                    /* try { // try from 000e8751 to 000e8755 has its CatchHandler @ 000e8b30 */\n      std::ios::clear(this_01,*(_Ios_Iostate *)\n                               (*(undefined **)((int)_in + -0xc) + (int)&local_12c + 0xc) |\n                              _S_failbit);\n    }\n    else {\n      std::ios::clear(this_01,_S_goodbit);\n    }" if (parenthesized_expression "(iVar17 == 0)" ( (binary_expression "iVar17 == 0" identifier == number_literal) )) (compound_statement "{\n                    /* try { // try from 000e8751 to 000e8755 has its CatchHandler @ 000e8b30 */\n      std::ios::clear(this_01,*(_Ios_Iostate *)\n                               (*(undefined **)((int)_in + -0xc) + (int)&local_12c + 0xc) |\n                              _S_failbit);\n    }" { comment (labeled_statement "std::ios::clear(this_01,*(_Ios_Iostate *)\n                               (*(undefined **)((int)_in + -0xc) + (int)&local_12c + 0xc) |\n                              _S_failbit);" statement_identifier : (ERROR ":" :) (labeled_statement "ios::clear(this_01,*(_Ios_Iostate *)\n                               (*(undefined **)((int)_in + -0xc) + (int)&local_12c + 0xc) |\n                              _S_failbit);" statement_identifier : (ERROR ":" :) (expression_statement "clear(this_01,*(_Ios_Iostate *)\n                               (*(undefined **)((int)_in + -0xc) + (int)&local_12c + 0xc) |\n                              _S_failbit);" (call_expression "clear(this_01,*(_Ios_Iostate *)\n                               (*(undefined **)((int)_in + -0xc) + (int)&local_12c + 0xc) |\n                              _S_failbit)" identifier (argument_list "(this_01,*(_Ios_Iostate *)\n                               (*(undefined **)((int)_in + -0xc) + (int)&local_12c + 0xc) |\n                              _S_failbit)" ( identifier , (binary_expression "*(_Ios_Iostate *)\n                               (*(undefined **)((int)_in + -0xc) + (int)&local_12c + 0xc) |\n                              _S_failbit" (pointer_expression "*(_Ios_Iostate *)\n                               (*(undefined **)((int)_in + -0xc) + (int)&local_12c + 0xc)" * (cast_expression "(_Ios_Iostate *)\n                               (*(undefined **)((int)_in + -0xc) + (int)&local_12c + 0xc)" ( (type_descriptor "_Ios_Iostate *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(undefined **)((int)_in + -0xc) + (int)&local_12c + 0xc)" ( (binary_expression "*(undefined **)((int)_in + -0xc) + (int)&local_12c + 0xc" (binary_expression "*(undefined **)((int)_in + -0xc) + (int)&local_12c" (pointer_expression "*(undefined **)((int)_in + -0xc)" * (cast_expression "(undefined **)((int)_in + -0xc)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)_in + -0xc)" ( (binary_expression "(int)_in + -0xc" (cast_expression "(int)_in" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) + (cast_expression "(int)&local_12c" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_12c" & identifier))) + number_literal) )))) | identifier) ))) ;))) }) (else_clause "else {\n      std::ios::clear(this_01,_S_goodbit);\n    }" else (compound_statement "{\n      std::ios::clear(this_01,_S_goodbit);\n    }" { (labeled_statement "std::ios::clear(this_01,_S_goodbit);" statement_identifier : (ERROR ":" :) (labeled_statement "ios::clear(this_01,_S_goodbit);" statement_identifier : (ERROR ":" :) (expression_statement "clear(this_01,_S_goodbit);" (call_expression "clear(this_01,_S_goodbit)" identifier (argument_list "(this_01,_S_goodbit)" ( identifier , identifier ))) ;))) }))) (if_statement "if ((local_90 & 5) != 0) {\n      piVar16 = __errno_location();\n      strerror(*piVar16);\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8a0c to 000e8a10 has its CatchHandler @ 000e8b30 */\n      gold_fatal(pcVar15);\n    }" if (parenthesized_expression "((local_90 & 5) != 0)" ( (binary_expression "(local_90 & 5) != 0" (parenthesized_expression "(local_90 & 5)" ( (binary_expression "local_90 & 5" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      piVar16 = __errno_location();\n      strerror(*piVar16);\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8a0c to 000e8a10 has its CatchHandler @ 000e8b30 */\n      gold_fatal(pcVar15);\n    }" { (expression_statement "piVar16 = __errno_location();" (assignment_expression "piVar16 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "strerror(*piVar16);" (call_expression "strerror(*piVar16)" identifier (argument_list "(*piVar16)" ( (pointer_expression "*piVar16" * identifier) ))) ;) (expression_statement "pcVar15 = (char *)gettext();" (assignment_expression "pcVar15 = (char *)gettext()" identifier = (cast_expression "(char *)gettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext()" identifier (argument_list "()" ( ))))) ;) comment comment (expression_statement "gold_fatal(pcVar15);" (call_expression "gold_fatal(pcVar15)" identifier (argument_list "(pcVar15)" ( identifier ))) ;) })) (expression_statement "paVar2 = &line.field_2;" (assignment_expression "paVar2 = &line.field_2" identifier = (pointer_expression "&line.field_2" & (field_expression "line.field_2" identifier . field_identifier))) ;) (expression_statement "line.field_2._M_local_buf[0] = '\0';" (assignment_expression "line.field_2._M_local_buf[0] = '\0'" (subscript_expression "line.field_2._M_local_buf[0]" (field_expression "line.field_2._M_local_buf" (field_expression "line.field_2" identifier . field_identifier) . field_identifier) [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "line._M_string_length = 0;" (assignment_expression "line._M_string_length = 0" (field_expression "line._M_string_length" identifier . field_identifier) = number_literal) ;) (expression_statement "pcVar6 = *(ctype<char> **)((int)auStack_b8 + (int)*(undefined **)((int)_in + -0xc));" (assignment_expression "pcVar6 = *(ctype<char> **)((int)auStack_b8 + (int)*(undefined **)((int)_in + -0xc))" identifier = (pointer_expression "*(ctype<char> **)((int)auStack_b8 + (int)*(undefined **)((int)_in + -0xc))" * (call_expression "(ctype<char> **)((int)auStack_b8 + (int)*(undefined **)((int)_in + -0xc))" (parenthesized_expression "(ctype<char> **)" ( (binary_expression "ctype<char> **" (binary_expression "ctype<char" identifier < identifier) > (pointer_expression "**" * (pointer_expression "*" * identifier))) )) (argument_list "((int)auStack_b8 + (int)*(undefined **)((int)_in + -0xc))" ( (binary_expression "(int)auStack_b8 + (int)*(undefined **)((int)_in + -0xc)" (cast_expression "(int)auStack_b8" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)*(undefined **)((int)_in + -0xc)" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*(undefined **)((int)_in + -0xc)" * (cast_expression "(undefined **)((int)_in + -0xc)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)_in + -0xc)" ( (binary_expression "(int)_in + -0xc" (cast_expression "(int)_in" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))))) ))))) ;) (expression_statement "line._M_dataplus._M_p = (pointer)paVar2;" (assignment_expression "line._M_dataplus._M_p = (pointer)paVar2" (field_expression "line._M_dataplus._M_p" (field_expression "line._M_dataplus" identifier . field_identifier) . field_identifier) = (cast_expression "(pointer)paVar2" ( (type_descriptor "pointer" type_identifier) ) identifier)) ;) (if_statement "if (pcVar6 == (ctype<char> *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8af0 to 000e8af4 has its CatchHandler @ 000e8b8b */\n      std::__throw_bad_cast();\n    }" if (parenthesized_expression "(pcVar6 == (ctype<char> *)0x0)" ( (binary_expression "pcVar6 == (ctype<char> *)0x0)" identifier == (parenthesized_expression "(ctype<char> *)0x0)" ( (binary_expression "ctype<char> *)0x0" (binary_expression "ctype<char" identifier < identifier) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) ))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8af0 to 000e8af4 has its CatchHandler @ 000e8b8b */\n      std::__throw_bad_cast();\n    }" { comment comment (labeled_statement "std::__throw_bad_cast();" statement_identifier : (ERROR ":" :) (expression_statement "__throw_bad_cast();" (call_expression "__throw_bad_cast()" identifier (argument_list "()" ( ))) ;)) })) (if_statement "if (pcVar6[0x1c] == (ctype<char>)0x0) {\n                    /* try { // try from 000e80ec to 000e8113 has its CatchHandler @ 000e8b8b */\n      std::ctype<char>::_M_widen_init(pcVar6);\n      cVar10 = (ctype<char>)0xa;\n      if (*(code **)(*(int *)pcVar6 + 0x18) != std::ctype<char>::do_widen) {\n        cVar10 = (ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))();\n      }\n    }\n    else {\n      cVar10 = pcVar6[0x27];\n    }" if (parenthesized_expression "(pcVar6[0x1c] == (ctype<char>)0x0)" ( (binary_expression "pcVar6[0x1c] == (ctype<char>)0x0)" (subscript_expression "pcVar6[0x1c]" identifier [ number_literal ]) == (parenthesized_expression "(ctype<char>)0x0)" ( (binary_expression "ctype<char>)0x0" (binary_expression "ctype<char" identifier < identifier) > (ERROR ")" )) number_literal) ))) )) (compound_statement "{\n                    /* try { // try from 000e80ec to 000e8113 has its CatchHandler @ 000e8b8b */\n      std::ctype<char>::_M_widen_init(pcVar6);\n      cVar10 = (ctype<char>)0xa;\n      if (*(code **)(*(int *)pcVar6 + 0x18) != std::ctype<char>::do_widen) {\n        cVar10 = (ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))();\n      }\n    }" { comment (labeled_statement "std::ctype<char>::_M_widen_init(pcVar6);" statement_identifier (ERROR "::ctype<char>:" : : (binary_expression "ctype<char" identifier < identifier) > :) : (expression_statement "_M_widen_init(pcVar6);" (call_expression "_M_widen_init(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier ))) ;)) (expression_statement "cVar10 = (ctype<char>)0xa;" (assignment_expression "cVar10 = (ctype<char>)0xa" identifier = (parenthesized_expression "(ctype<char>)0xa" ( (binary_expression "ctype<char>)0xa" (binary_expression "ctype<char" identifier < identifier) > (ERROR ")" )) number_literal) ))) ;) (if_statement "if (*(code **)(*(int *)pcVar6 + 0x18) != std::ctype<char>::do_widen) {\n        cVar10 = (ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))();\n      }" if (parenthesized_expression "(*(code **)(*(int *)pcVar6 + 0x18) != std::ctype<char>::do_widen)" ( (binary_expression "*(code **)(*(int *)pcVar6 + 0x18) != std::ctype<char>::do_widen" (binary_expression "*(code **)(*(int *)pcVar6 + 0x18) != std::ctype<char" (binary_expression "*(code **)(*(int *)pcVar6 + 0x18) != std" (pointer_expression "*(code **)(*(int *)pcVar6 + 0x18)" * (cast_expression "(code **)(*(int *)pcVar6 + 0x18)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)pcVar6 + 0x18)" ( (binary_expression "*(int *)pcVar6 + 0x18" (pointer_expression "*(int *)pcVar6" * (cast_expression "(int *)pcVar6" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) != identifier) (ERROR "::ctype" : : identifier) < identifier) > (ERROR "::" : :) identifier) )) (compound_statement "{\n        cVar10 = (ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))();\n      }" { (expression_statement "cVar10 = (ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))();" (assignment_expression "cVar10 = (ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))()" identifier = (call_expression "(ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))()" (call_expression "(ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))" (parenthesized_expression "(ctype<char>)" ( (binary_expression "ctype<char>" (binary_expression "ctype<char" identifier < identifier) > identifier) )) (argument_list "(**(code **)(*(int *)pcVar6 + 0x18))" ( (pointer_expression "**(code **)(*(int *)pcVar6 + 0x18)" * (pointer_expression "*(code **)(*(int *)pcVar6 + 0x18)" * (cast_expression "(code **)(*(int *)pcVar6 + 0x18)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)pcVar6 + 0x18)" ( (binary_expression "*(int *)pcVar6 + 0x18" (pointer_expression "*(int *)pcVar6" * (cast_expression "(int *)pcVar6" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) ))))) ))) (argument_list "()" ( )))) ;) })) }) (else_clause "else {\n      cVar10 = pcVar6[0x27];\n    }" else (compound_statement "{\n      cVar10 = pcVar6[0x27];\n    }" { (expression_statement "cVar10 = pcVar6[0x27];" (assignment_expression "cVar10 = pcVar6[0x27]" identifier = (subscript_expression "pcVar6[0x27]" identifier [ number_literal ])) ;) }))) comment (ERROR "std::getline<char,std::char_traits<char>,std::" (comma_expression "std::getline<char,std::char_traits<char>,std" identifier (ERROR "::getline<char,std::char_traits<char>" : : (comma_expression "getline<char,std" (binary_expression "getline<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : :) (expression_statement "allocator<char>>\n              ((istream *)&in,(string *)&line,(char)cVar10);" (binary_expression "allocator<char>>\n              ((istream *)&in,(string *)&line,(char)cVar10)" identifier < (binary_expression "char>>\n              ((istream *)&in,(string *)&line,(char)cVar10)" identifier >> (parenthesized_expression "((istream *)&in,(string *)&line,(char)cVar10)" ( (comma_expression "(istream *)&in,(string *)&line,(char)cVar10" (cast_expression "(istream *)&in" ( (type_descriptor "istream *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&in" & identifier)) , (comma_expression "(string *)&line,(char)cVar10" (cast_expression "(string *)&line" ( (type_descriptor "string *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&line" & identifier)) , (cast_expression "(char)cVar10" ( (type_descriptor "char" primitive_type) ) identifier))) )))) ;) (while_statement "while ((local_90 & 5) == 0) {\n      if ((line._M_string_length != 0) && (line._M_dataplus._M_p[line._M_string_length - 1] == '\r')\n         ) {\n                    /* try { // try from 000e7e32 to 000e7e36 has its CatchHandler @ 000e8b8b */\n        std::string::resize((string *)&line,line._M_string_length - 1,'\0');\n      }\n      __node = (__node_type *)\n               std::_Hash_bytes(line._M_dataplus._M_p,line._M_string_length,0xc70f6907);\n      uVar19 = (uint)__node % (this->symbols_to_retain_)._M_h._M_bucket_count;\n      p_Var11 = std::\n                _Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                ::_M_find_before_node\n                          (&(this->symbols_to_retain_)._M_h,uVar19,&line,(__hash_code)__node);\n      if ((p_Var11 == (__node_base *)0x0) || (p_Var11->_M_nxt == (_Hash_node_base *)0x0)) {\n                    /* try { // try from 000e7a7b to 000e7a7f has its CatchHandler @ 000e8b8b */\n        __n_elt = (undefined4 *)operator_new(0x20);\n        *__n_elt = 0;\n        __n_elt[1] = __n_elt + 3;\n                    /* try { // try from 000e7aa7 to 000e7aab has its CatchHandler @ 000e8b99 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n                    /* try { // try from 000e7ac4 to 000e7ac8 has its CatchHandler @ 000e8b8b */\n        std::\n        _Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n        ::_M_insert_unique_node\n                  ((_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                    *)local_1c0,(size_type)&this->symbols_to_retain_,uVar19,__node,\n                   (size_type)__n_elt);\n      }\n      pcVar6 = *(ctype<char> **)((int)auStack_b8 + (int)*(undefined **)((int)_in + -0xc));\n      if (pcVar6 == (ctype<char> *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88aa to 000e88ae has its CatchHandler @ 000e8b8b */\n        std::__throw_bad_cast();\n      }\n      if (pcVar6[0x1c] == (ctype<char>)0x0) {\n                    /* try { // try from 000e79a3 to 000e79ca has its CatchHandler @ 000e8b8b */\n        std::ctype<char>::_M_widen_init(pcVar6);\n        cVar10 = (ctype<char>)0xa;\n        if (*(code **)(*(int *)pcVar6 + 0x18) != std::ctype<char>::do_widen) {\n          cVar10 = (ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))();\n        }\n      }\n      else {\n        cVar10 = pcVar6[0x27];\n      }\n      std::getline<char,std::char_traits<char>,std::allocator<char>>\n                ((istream *)&in,(string *)&line,(char)cVar10);\n    }" while (parenthesized_expression "((local_90 & 5) == 0)" ( (binary_expression "(local_90 & 5) == 0" (parenthesized_expression "(local_90 & 5)" ( (binary_expression "local_90 & 5" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n      if ((line._M_string_length != 0) && (line._M_dataplus._M_p[line._M_string_length - 1] == '\r')\n         ) {\n                    /* try { // try from 000e7e32 to 000e7e36 has its CatchHandler @ 000e8b8b */\n        std::string::resize((string *)&line,line._M_string_length - 1,'\0');\n      }\n      __node = (__node_type *)\n               std::_Hash_bytes(line._M_dataplus._M_p,line._M_string_length,0xc70f6907);\n      uVar19 = (uint)__node % (this->symbols_to_retain_)._M_h._M_bucket_count;\n      p_Var11 = std::\n                _Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                ::_M_find_before_node\n                          (&(this->symbols_to_retain_)._M_h,uVar19,&line,(__hash_code)__node);\n      if ((p_Var11 == (__node_base *)0x0) || (p_Var11->_M_nxt == (_Hash_node_base *)0x0)) {\n                    /* try { // try from 000e7a7b to 000e7a7f has its CatchHandler @ 000e8b8b */\n        __n_elt = (undefined4 *)operator_new(0x20);\n        *__n_elt = 0;\n        __n_elt[1] = __n_elt + 3;\n                    /* try { // try from 000e7aa7 to 000e7aab has its CatchHandler @ 000e8b99 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n                    /* try { // try from 000e7ac4 to 000e7ac8 has its CatchHandler @ 000e8b8b */\n        std::\n        _Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n        ::_M_insert_unique_node\n                  ((_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                    *)local_1c0,(size_type)&this->symbols_to_retain_,uVar19,__node,\n                   (size_type)__n_elt);\n      }\n      pcVar6 = *(ctype<char> **)((int)auStack_b8 + (int)*(undefined **)((int)_in + -0xc));\n      if (pcVar6 == (ctype<char> *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88aa to 000e88ae has its CatchHandler @ 000e8b8b */\n        std::__throw_bad_cast();\n      }\n      if (pcVar6[0x1c] == (ctype<char>)0x0) {\n                    /* try { // try from 000e79a3 to 000e79ca has its CatchHandler @ 000e8b8b */\n        std::ctype<char>::_M_widen_init(pcVar6);\n        cVar10 = (ctype<char>)0xa;\n        if (*(code **)(*(int *)pcVar6 + 0x18) != std::ctype<char>::do_widen) {\n          cVar10 = (ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))();\n        }\n      }\n      else {\n        cVar10 = pcVar6[0x27];\n      }\n      std::getline<char,std::char_traits<char>,std::allocator<char>>\n                ((istream *)&in,(string *)&line,(char)cVar10);\n    }" { (if_statement "if ((line._M_string_length != 0) && (line._M_dataplus._M_p[line._M_string_length - 1] == '\r')\n         ) {\n                    /* try { // try from 000e7e32 to 000e7e36 has its CatchHandler @ 000e8b8b */\n        std::string::resize((string *)&line,line._M_string_length - 1,'\0');\n      }" if (parenthesized_expression "((line._M_string_length != 0) && (line._M_dataplus._M_p[line._M_string_length - 1] == '\r')\n         )" ( (binary_expression "(line._M_string_length != 0) && (line._M_dataplus._M_p[line._M_string_length - 1] == '\r')" (parenthesized_expression "(line._M_string_length != 0)" ( (binary_expression "line._M_string_length != 0" (field_expression "line._M_string_length" identifier . field_identifier) != number_literal) )) && (parenthesized_expression "(line._M_dataplus._M_p[line._M_string_length - 1] == '\r')" ( (binary_expression "line._M_dataplus._M_p[line._M_string_length - 1] == '\r'" (subscript_expression "line._M_dataplus._M_p[line._M_string_length - 1]" (field_expression "line._M_dataplus._M_p" (field_expression "line._M_dataplus" identifier . field_identifier) . field_identifier) [ (binary_expression "line._M_string_length - 1" (field_expression "line._M_string_length" identifier . field_identifier) - number_literal) ]) == (char_literal "'\r'" ' escape_sequence ')) ))) )) (compound_statement "{\n                    /* try { // try from 000e7e32 to 000e7e36 has its CatchHandler @ 000e8b8b */\n        std::string::resize((string *)&line,line._M_string_length - 1,'\0');\n      }" { comment (labeled_statement "std::string::resize((string *)&line,line._M_string_length - 1,'\0');" statement_identifier : (ERROR ":" :) (labeled_statement "string::resize((string *)&line,line._M_string_length - 1,'\0');" statement_identifier : (ERROR ":" :) (expression_statement "resize((string *)&line,line._M_string_length - 1,'\0');" (call_expression "resize((string *)&line,line._M_string_length - 1,'\0')" identifier (argument_list "((string *)&line,line._M_string_length - 1,'\0')" ( (cast_expression "(string *)&line" ( (type_descriptor "string *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&line" & identifier)) , (binary_expression "line._M_string_length - 1" (field_expression "line._M_string_length" identifier . field_identifier) - number_literal) , (char_literal "'\0'" ' escape_sequence ') ))) ;))) })) (ERROR "__node = (__node_type *)\n               std::" (assignment_expression "__node = (__node_type *)\n               std" identifier = (cast_expression "(__node_type *)\n               std" ( (type_descriptor "__node_type *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) : :) (expression_statement "_Hash_bytes(line._M_dataplus._M_p,line._M_string_length,0xc70f6907);" (call_expression "_Hash_bytes(line._M_dataplus._M_p,line._M_string_length,0xc70f6907)" identifier (argument_list "(line._M_dataplus._M_p,line._M_string_length,0xc70f6907)" ( (field_expression "line._M_dataplus._M_p" (field_expression "line._M_dataplus" identifier . field_identifier) . field_identifier) , (field_expression "line._M_string_length" identifier . field_identifier) , number_literal ))) ;) (expression_statement "uVar19 = (uint)__node % (this->symbols_to_retain_)._M_h._M_bucket_count;" (assignment_expression "uVar19 = (uint)__node % (this->symbols_to_retain_)._M_h._M_bucket_count" identifier = (binary_expression "(uint)__node % (this->symbols_to_retain_)._M_h._M_bucket_count" (cast_expression "(uint)__node" ( (type_descriptor "uint" type_identifier) ) identifier) % (field_expression "(this->symbols_to_retain_)._M_h._M_bucket_count" (field_expression "(this->symbols_to_retain_)._M_h" (parenthesized_expression "(this->symbols_to_retain_)" ( (field_expression "this->symbols_to_retain_" identifier -> field_identifier) )) . field_identifier) . field_identifier))) ;) (ERROR "p_Var11 = std::\n                _Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::" (assignment_expression "p_Var11 = std" identifier = identifier) : : (binary_expression "_Hashtable<std" identifier < identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_>,_std" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_>,_std" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_>_>,_std" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : (comma_expression "__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std" identifier (ERROR "::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>" : : (comma_expression "_Identity,_std" identifier , identifier) : : (binary_expression "equal_to<std" identifier < identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) >) , identifier) : : (binary_expression "hash<std" identifier < identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_>_>,_std" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : :) (labeled_statement "__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                ::_M_find_before_node\n                          (&(this->symbols_to_retain_)._M_h,uVar19,&line,(__hash_code)__node);" statement_identifier (ERROR "::_Mod_range_hashing,_std:" : : (comma_expression "_Mod_range_hashing,_std" identifier , identifier) :) : (labeled_statement "__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                ::_M_find_before_node\n                          (&(this->symbols_to_retain_)._M_h,uVar19,&line,(__hash_code)__node);" statement_identifier (ERROR "::_Default_ranged_hash,_std:" : : (comma_expression "_Default_ranged_hash,_std" identifier , identifier) :) : (labeled_statement "__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                ::_M_find_before_node\n                          (&(this->symbols_to_retain_)._M_h,uVar19,&line,(__hash_code)__node);" statement_identifier (ERROR "::_Prime_rehash_policy,_std:" : : (comma_expression "_Prime_rehash_policy,_std" identifier , identifier) :) : (labeled_statement "__detail::_Hashtable_traits<true,_true,_true>_>\n                ::_M_find_before_node\n                          (&(this->symbols_to_retain_)._M_h,uVar19,&line,(__hash_code)__node);" statement_identifier : (ERROR ":" :) (expression_statement "_Hashtable_traits<true,_true,_true>_>\n                ::_M_find_before_node\n                          (&(this->symbols_to_retain_)._M_h,uVar19,&line,(__hash_code)__node);" (comma_expression "_Hashtable_traits<true,_true,_true>_>\n                ::_M_find_before_node\n                          (&(this->symbols_to_retain_)._M_h,uVar19,&line,(__hash_code)__node)" (binary_expression "_Hashtable_traits<true" identifier < true) , (comma_expression "_true,_true>_>\n                ::_M_find_before_node\n                          (&(this->symbols_to_retain_)._M_h,uVar19,&line,(__hash_code)__node)" identifier , (binary_expression "_true>_>\n                ::_M_find_before_node\n                          (&(this->symbols_to_retain_)._M_h,uVar19,&line,(__hash_code)__node)" (binary_expression "_true>_" identifier > identifier) > (ERROR "::" : :) (call_expression "_M_find_before_node\n                          (&(this->symbols_to_retain_)._M_h,uVar19,&line,(__hash_code)__node)" identifier (argument_list "(&(this->symbols_to_retain_)._M_h,uVar19,&line,(__hash_code)__node)" ( (pointer_expression "&(this->symbols_to_retain_)._M_h" & (field_expression "(this->symbols_to_retain_)._M_h" (parenthesized_expression "(this->symbols_to_retain_)" ( (field_expression "this->symbols_to_retain_" identifier -> field_identifier) )) . field_identifier)) , identifier , (pointer_expression "&line" & identifier) , (cast_expression "(__hash_code)__node" ( (type_descriptor "__hash_code" type_identifier) ) identifier) )))))) ;))))) (if_statement "if ((p_Var11 == (__node_base *)0x0) || (p_Var11->_M_nxt == (_Hash_node_base *)0x0)) {\n                    /* try { // try from 000e7a7b to 000e7a7f has its CatchHandler @ 000e8b8b */\n        __n_elt = (undefined4 *)operator_new(0x20);\n        *__n_elt = 0;\n        __n_elt[1] = __n_elt + 3;\n                    /* try { // try from 000e7aa7 to 000e7aab has its CatchHandler @ 000e8b99 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n                    /* try { // try from 000e7ac4 to 000e7ac8 has its CatchHandler @ 000e8b8b */\n        std::\n        _Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n        ::_M_insert_unique_node\n                  ((_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                    *)local_1c0,(size_type)&this->symbols_to_retain_,uVar19,__node,\n                   (size_type)__n_elt);\n      }" if (parenthesized_expression "((p_Var11 == (__node_base *)0x0) || (p_Var11->_M_nxt == (_Hash_node_base *)0x0))" ( (binary_expression "(p_Var11 == (__node_base *)0x0) || (p_Var11->_M_nxt == (_Hash_node_base *)0x0)" (parenthesized_expression "(p_Var11 == (__node_base *)0x0)" ( (binary_expression "p_Var11 == (__node_base *)0x0" identifier == (cast_expression "(__node_base *)0x0" ( (type_descriptor "__node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(p_Var11->_M_nxt == (_Hash_node_base *)0x0)" ( (binary_expression "p_Var11->_M_nxt == (_Hash_node_base *)0x0" (field_expression "p_Var11->_M_nxt" identifier -> field_identifier) == (cast_expression "(_Hash_node_base *)0x0" ( (type_descriptor "_Hash_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (compound_statement "{\n                    /* try { // try from 000e7a7b to 000e7a7f has its CatchHandler @ 000e8b8b */\n        __n_elt = (undefined4 *)operator_new(0x20);\n        *__n_elt = 0;\n        __n_elt[1] = __n_elt + 3;\n                    /* try { // try from 000e7aa7 to 000e7aab has its CatchHandler @ 000e8b99 */\n        std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();\n                    /* try { // try from 000e7ac4 to 000e7ac8 has its CatchHandler @ 000e8b8b */\n        std::\n        _Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n        ::_M_insert_unique_node\n                  ((_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                    *)local_1c0,(size_type)&this->symbols_to_retain_,uVar19,__node,\n                   (size_type)__n_elt);\n      }" { comment (expression_statement "__n_elt = (undefined4 *)operator_new(0x20);" (assignment_expression "__n_elt = (undefined4 *)operator_new(0x20)" identifier = (cast_expression "(undefined4 *)operator_new(0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "operator_new(0x20)" identifier (argument_list "(0x20)" ( number_literal ))))) ;) (expression_statement "*__n_elt = 0;" (assignment_expression "*__n_elt = 0" (pointer_expression "*__n_elt" * identifier) = number_literal) ;) (expression_statement "__n_elt[1] = __n_elt + 3;" (assignment_expression "__n_elt[1] = __n_elt + 3" (subscript_expression "__n_elt[1]" identifier [ number_literal ]) = (binary_expression "__n_elt + 3" identifier + number_literal)) ;) comment (labeled_statement "std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>::\n        _M_construct<char*>();" statement_identifier (ERROR "::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>:" : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > :) : (expression_statement "_M_construct<char*>();" (binary_expression "_M_construct<char" identifier < identifier) (ERROR "*>()" * > ( )) ;)) comment (ERROR "std::\n        _Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::" (comma_expression "std::\n        _Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std" identifier (ERROR "::\n        _Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>" : : (binary_expression "_Hashtable<std" identifier < identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) >) , identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_std" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_>_>,_std" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : (comma_expression "__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std" identifier (ERROR "::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>" : : (comma_expression "_Identity,_std" identifier , identifier) : : (binary_expression "equal_to<std" identifier < identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) >) , identifier) : : (binary_expression "hash<std" identifier < identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_>_>,_std" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : :) (labeled_statement "__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n        ::_M_insert_unique_node\n                  ((_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                    *)local_1c0,(size_type)&this->symbols_to_retain_,uVar19,__node,\n                   (size_type)__n_elt);" statement_identifier (ERROR "::_Mod_range_hashing,_std:" : : (comma_expression "_Mod_range_hashing,_std" identifier , identifier) :) : (labeled_statement "__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n        ::_M_insert_unique_node\n                  ((_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                    *)local_1c0,(size_type)&this->symbols_to_retain_,uVar19,__node,\n                   (size_type)__n_elt);" statement_identifier (ERROR "::_Default_ranged_hash,_std:" : : (comma_expression "_Default_ranged_hash,_std" identifier , identifier) :) : (labeled_statement "__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n        ::_M_insert_unique_node\n                  ((_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                    *)local_1c0,(size_type)&this->symbols_to_retain_,uVar19,__node,\n                   (size_type)__n_elt);" statement_identifier (ERROR "::_Prime_rehash_policy,_std:" : : (comma_expression "_Prime_rehash_policy,_std" identifier , identifier) :) : (labeled_statement "__detail::_Hashtable_traits<true,_true,_true>_>\n        ::_M_insert_unique_node\n                  ((_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                    *)local_1c0,(size_type)&this->symbols_to_retain_,uVar19,__node,\n                   (size_type)__n_elt);" statement_identifier : (ERROR ":" :) (expression_statement "_Hashtable_traits<true,_true,_true>_>\n        ::_M_insert_unique_node\n                  ((_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                    *)local_1c0,(size_type)&this->symbols_to_retain_,uVar19,__node,\n                   (size_type)__n_elt);" (comma_expression "_Hashtable_traits<true,_true,_true>_>\n        ::_M_insert_unique_node\n                  ((_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                    *)local_1c0,(size_type)&this->symbols_to_retain_,uVar19,__node,\n                   (size_type)__n_elt)" (binary_expression "_Hashtable_traits<true" identifier < true) , (comma_expression "_true,_true>_>\n        ::_M_insert_unique_node\n                  ((_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                    *)local_1c0,(size_type)&this->symbols_to_retain_,uVar19,__node,\n                   (size_type)__n_elt)" identifier , (binary_expression "_true>_>\n        ::_M_insert_unique_node\n                  ((_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                    *)local_1c0,(size_type)&this->symbols_to_retain_,uVar19,__node,\n                   (size_type)__n_elt)" (binary_expression "_true>_" identifier > identifier) > (ERROR "::" : :) (call_expression "_M_insert_unique_node\n                  ((_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                    *)local_1c0,(size_type)&this->symbols_to_retain_,uVar19,__node,\n                   (size_type)__n_elt)" identifier (argument_list "((_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                    *)local_1c0,(size_type)&this->symbols_to_retain_,uVar19,__node,\n                   (size_type)__n_elt)" ( (parenthesized_expression "(_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::_Hashtable_traits<true,_true,_true>_>\n                    *)local_1c0,(size_type)&this->symbols_to_retain_,uVar19,__node,\n                   (size_type)__n_elt)" ( (ERROR "_Hashtable<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Identity,_std::equal_to<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::hash<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::" (comma_expression "_Hashtable<std::__cxx11::basic_string<char,_std" (binary_expression "_Hashtable<std::__cxx11::basic_string<char" (binary_expression "_Hashtable<std" identifier < identifier) (ERROR "::__cxx11::basic_string" : : identifier : : identifier) < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_std" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_std" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>_>,_std" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : identifier : : (comma_expression "_Identity,_std" identifier , identifier) : : (binary_expression "equal_to<std" identifier < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>_>,_std" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "hash<std" identifier < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>_>,_std" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > (ERROR "," ,) identifier) : : identifier : : (comma_expression "_Mod_range_hashing,_std" identifier , identifier) : : identifier : : (comma_expression "_Default_ranged_hash,_std" identifier , identifier) : : identifier : : (comma_expression "_Prime_rehash_policy,_std" identifier , identifier) : : identifier : :) (comma_expression "_Hashtable_traits<true,_true,_true>_>\n                    *)local_1c0,(size_type)&this->symbols_to_retain_,uVar19,__node,\n                   (size_type)__n_elt" (binary_expression "_Hashtable_traits<true" identifier < true) , (comma_expression "_true,_true>_>\n                    *)local_1c0,(size_type)&this->symbols_to_retain_,uVar19,__node,\n                   (size_type)__n_elt" identifier , (comma_expression "_true>_>\n                    *)local_1c0,(size_type)&this->symbols_to_retain_,uVar19,__node,\n                   (size_type)__n_elt" (binary_expression "_true>_>\n                    *)local_1c0" (binary_expression "_true>_" identifier > identifier) > (pointer_expression "*)local_1c0" * (ERROR ")" )) identifier)) , (comma_expression "(size_type)&this->symbols_to_retain_,uVar19,__node,\n                   (size_type)__n_elt" (binary_expression "(size_type)&this->symbols_to_retain_" (parenthesized_expression "(size_type)" ( identifier )) & (field_expression "this->symbols_to_retain_" identifier -> field_identifier)) , (comma_expression "uVar19,__node,\n                   (size_type)__n_elt" identifier , (comma_expression "__node,\n                   (size_type)__n_elt" identifier , (cast_expression "(size_type)__n_elt" ( (type_descriptor "size_type" type_identifier) ) identifier))))))) )) )))))) ;))))) })) (expression_statement "pcVar6 = *(ctype<char> **)((int)auStack_b8 + (int)*(undefined **)((int)_in + -0xc));" (assignment_expression "pcVar6 = *(ctype<char> **)((int)auStack_b8 + (int)*(undefined **)((int)_in + -0xc))" identifier = (pointer_expression "*(ctype<char> **)((int)auStack_b8 + (int)*(undefined **)((int)_in + -0xc))" * (call_expression "(ctype<char> **)((int)auStack_b8 + (int)*(undefined **)((int)_in + -0xc))" (parenthesized_expression "(ctype<char> **)" ( (binary_expression "ctype<char> **" (binary_expression "ctype<char" identifier < identifier) > (pointer_expression "**" * (pointer_expression "*" * identifier))) )) (argument_list "((int)auStack_b8 + (int)*(undefined **)((int)_in + -0xc))" ( (binary_expression "(int)auStack_b8 + (int)*(undefined **)((int)_in + -0xc)" (cast_expression "(int)auStack_b8" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)*(undefined **)((int)_in + -0xc)" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*(undefined **)((int)_in + -0xc)" * (cast_expression "(undefined **)((int)_in + -0xc)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)_in + -0xc)" ( (binary_expression "(int)_in + -0xc" (cast_expression "(int)_in" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))))) ))))) ;) (if_statement "if (pcVar6 == (ctype<char> *)0x0) {\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88aa to 000e88ae has its CatchHandler @ 000e8b8b */\n        std::__throw_bad_cast();\n      }" if (parenthesized_expression "(pcVar6 == (ctype<char> *)0x0)" ( (binary_expression "pcVar6 == (ctype<char> *)0x0)" identifier == (parenthesized_expression "(ctype<char> *)0x0)" ( (binary_expression "ctype<char> *)0x0" (binary_expression "ctype<char" identifier < identifier) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) ))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88aa to 000e88ae has its CatchHandler @ 000e8b8b */\n        std::__throw_bad_cast();\n      }" { comment comment (labeled_statement "std::__throw_bad_cast();" statement_identifier : (ERROR ":" :) (expression_statement "__throw_bad_cast();" (call_expression "__throw_bad_cast()" identifier (argument_list "()" ( ))) ;)) })) (if_statement "if (pcVar6[0x1c] == (ctype<char>)0x0) {\n                    /* try { // try from 000e79a3 to 000e79ca has its CatchHandler @ 000e8b8b */\n        std::ctype<char>::_M_widen_init(pcVar6);\n        cVar10 = (ctype<char>)0xa;\n        if (*(code **)(*(int *)pcVar6 + 0x18) != std::ctype<char>::do_widen) {\n          cVar10 = (ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))();\n        }\n      }\n      else {\n        cVar10 = pcVar6[0x27];\n      }" if (parenthesized_expression "(pcVar6[0x1c] == (ctype<char>)0x0)" ( (binary_expression "pcVar6[0x1c] == (ctype<char>)0x0)" (subscript_expression "pcVar6[0x1c]" identifier [ number_literal ]) == (parenthesized_expression "(ctype<char>)0x0)" ( (binary_expression "ctype<char>)0x0" (binary_expression "ctype<char" identifier < identifier) > (ERROR ")" )) number_literal) ))) )) (compound_statement "{\n                    /* try { // try from 000e79a3 to 000e79ca has its CatchHandler @ 000e8b8b */\n        std::ctype<char>::_M_widen_init(pcVar6);\n        cVar10 = (ctype<char>)0xa;\n        if (*(code **)(*(int *)pcVar6 + 0x18) != std::ctype<char>::do_widen) {\n          cVar10 = (ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))();\n        }\n      }" { comment (labeled_statement "std::ctype<char>::_M_widen_init(pcVar6);" statement_identifier (ERROR "::ctype<char>:" : : (binary_expression "ctype<char" identifier < identifier) > :) : (expression_statement "_M_widen_init(pcVar6);" (call_expression "_M_widen_init(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier ))) ;)) (expression_statement "cVar10 = (ctype<char>)0xa;" (assignment_expression "cVar10 = (ctype<char>)0xa" identifier = (parenthesized_expression "(ctype<char>)0xa" ( (binary_expression "ctype<char>)0xa" (binary_expression "ctype<char" identifier < identifier) > (ERROR ")" )) number_literal) ))) ;) (if_statement "if (*(code **)(*(int *)pcVar6 + 0x18) != std::ctype<char>::do_widen) {\n          cVar10 = (ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))();\n        }" if (parenthesized_expression "(*(code **)(*(int *)pcVar6 + 0x18) != std::ctype<char>::do_widen)" ( (binary_expression "*(code **)(*(int *)pcVar6 + 0x18) != std::ctype<char>::do_widen" (binary_expression "*(code **)(*(int *)pcVar6 + 0x18) != std::ctype<char" (binary_expression "*(code **)(*(int *)pcVar6 + 0x18) != std" (pointer_expression "*(code **)(*(int *)pcVar6 + 0x18)" * (cast_expression "(code **)(*(int *)pcVar6 + 0x18)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)pcVar6 + 0x18)" ( (binary_expression "*(int *)pcVar6 + 0x18" (pointer_expression "*(int *)pcVar6" * (cast_expression "(int *)pcVar6" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) != identifier) (ERROR "::ctype" : : identifier) < identifier) > (ERROR "::" : :) identifier) )) (compound_statement "{\n          cVar10 = (ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))();\n        }" { (expression_statement "cVar10 = (ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))();" (assignment_expression "cVar10 = (ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))()" identifier = (call_expression "(ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))()" (call_expression "(ctype<char>)(**(code **)(*(int *)pcVar6 + 0x18))" (parenthesized_expression "(ctype<char>)" ( (binary_expression "ctype<char>" (binary_expression "ctype<char" identifier < identifier) > identifier) )) (argument_list "(**(code **)(*(int *)pcVar6 + 0x18))" ( (pointer_expression "**(code **)(*(int *)pcVar6 + 0x18)" * (pointer_expression "*(code **)(*(int *)pcVar6 + 0x18)" * (cast_expression "(code **)(*(int *)pcVar6 + 0x18)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)pcVar6 + 0x18)" ( (binary_expression "*(int *)pcVar6 + 0x18" (pointer_expression "*(int *)pcVar6" * (cast_expression "(int *)pcVar6" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) ))))) ))) (argument_list "()" ( )))) ;) })) }) (else_clause "else {\n        cVar10 = pcVar6[0x27];\n      }" else (compound_statement "{\n        cVar10 = pcVar6[0x27];\n      }" { (expression_statement "cVar10 = pcVar6[0x27];" (assignment_expression "cVar10 = pcVar6[0x27]" identifier = (subscript_expression "pcVar6[0x27]" identifier [ number_literal ])) ;) }))) (ERROR "std::getline<char,std::char_traits<char>,std::" (comma_expression "std::getline<char,std::char_traits<char>,std" identifier (ERROR "::getline<char,std::char_traits<char>" : : (comma_expression "getline<char,std" (binary_expression "getline<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : :) (expression_statement "allocator<char>>\n                ((istream *)&in,(string *)&line,(char)cVar10);" (binary_expression "allocator<char>>\n                ((istream *)&in,(string *)&line,(char)cVar10)" identifier < (binary_expression "char>>\n                ((istream *)&in,(string *)&line,(char)cVar10)" identifier >> (parenthesized_expression "((istream *)&in,(string *)&line,(char)cVar10)" ( (comma_expression "(istream *)&in,(string *)&line,(char)cVar10" (cast_expression "(istream *)&in" ( (type_descriptor "istream *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&in" & identifier)) , (comma_expression "(string *)&line,(char)cVar10" (cast_expression "(string *)&line" ( (type_descriptor "string *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&line" & identifier)) , (cast_expression "(char)cVar10" ( (type_descriptor "char" primitive_type) ) identifier))) )))) ;) })) (if_statement "if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n         *)line._M_dataplus._M_p != paVar2) {\n      operator_delete(line._M_dataplus._M_p);\n    }" if (parenthesized_expression "((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n         *)line._M_dataplus._M_p != paVar2)" ( (parenthesized_expression "(anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n         *)line._M_dataplus._M_p != paVar2)" ( (ERROR "anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::" (comma_expression "anon_union_16_2_edb7204a_for_basic_string<char,_std" (binary_expression "anon_union_16_2_edb7204a_for_basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : :) (binary_expression "allocator<char>_>_9\n         *)line._M_dataplus._M_p != paVar2" (binary_expression "allocator<char>_>_9\n         *)line._M_dataplus._M_p" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (binary_expression "_9\n         *)line._M_dataplus._M_p" identifier * (ERROR ")" )) (field_expression "line._M_dataplus._M_p" (field_expression "line._M_dataplus" identifier . field_identifier) . field_identifier))) != identifier) )) )) (compound_statement "{\n      operator_delete(line._M_dataplus._M_p);\n    }" { (expression_statement "operator_delete(line._M_dataplus._M_p);" (call_expression "operator_delete(line._M_dataplus._M_p)" identifier (argument_list "(line._M_dataplus._M_p)" ( (field_expression "line._M_dataplus._M_p" (field_expression "line._M_dataplus" identifier . field_identifier) . field_identifier) ))) ;) })) (expression_statement "_in = &PTR__ifstream_0038c8b4;" (assignment_expression "_in = &PTR__ifstream_0038c8b4" identifier = (pointer_expression "&PTR__ifstream_0038c8b4" & identifier)) ;) (expression_statement "local_a4[0] = &PTR__ifstream_0038c8c8;" (assignment_expression "local_a4[0] = &PTR__ifstream_0038c8c8" (subscript_expression "local_a4[0]" identifier [ number_literal ]) = (pointer_expression "&PTR__ifstream_0038c8c8" & identifier)) ;) (expression_statement "local_12c._M_allocated_capacity = (size_type)&PTR__filebuf_0038c838;" (assignment_expression "local_12c._M_allocated_capacity = (size_type)&PTR__filebuf_0038c838" (field_expression "local_12c._M_allocated_capacity" identifier . field_identifier) = (binary_expression "(size_type)&PTR__filebuf_0038c838" (parenthesized_expression "(size_type)" ( identifier )) & identifier)) ;) (labeled_statement "std::filebuf::close((filebuf *)local_12c._M_local_buf);" statement_identifier : (ERROR ":" :) (labeled_statement "filebuf::close((filebuf *)local_12c._M_local_buf);" statement_identifier : (ERROR ":" :) (expression_statement "close((filebuf *)local_12c._M_local_buf);" (call_expression "close((filebuf *)local_12c._M_local_buf)" identifier (argument_list "((filebuf *)local_12c._M_local_buf)" ( (cast_expression "(filebuf *)local_12c._M_local_buf" ( (type_descriptor "filebuf *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_12c._M_local_buf" identifier . field_identifier)) ))) ;))) (labeled_statement "std::__basic_file<char>::~__basic_file(local_f4);" statement_identifier (ERROR "::__basic_file<char>:" : : (binary_expression "__basic_file<char" identifier < identifier) > :) : (expression_statement "~__basic_file(local_f4);" (unary_expression "~__basic_file(local_f4)" ~ (call_expression "__basic_file(local_f4)" identifier (argument_list "(local_f4)" ( identifier )))) ;)) (expression_statement "local_12c._M_allocated_capacity = (size_type)&PTR__streambuf_0038c0a4;" (assignment_expression "local_12c._M_allocated_capacity = (size_type)&PTR__streambuf_0038c0a4" (field_expression "local_12c._M_allocated_capacity" identifier . field_identifier) = (binary_expression "(size_type)&PTR__streambuf_0038c0a4" (parenthesized_expression "(size_type)" ( identifier )) & identifier)) ;) (labeled_statement "std::locale::~locale(local_110);" statement_identifier : (ERROR ":" :) (labeled_statement "locale::~locale(local_110);" statement_identifier : (ERROR ":" :) (expression_statement "~locale(local_110);" (unary_expression "~locale(local_110)" ~ (call_expression "locale(local_110)" identifier (argument_list "(local_110)" ( identifier )))) ;))) (expression_statement "_in = (undefined **)paVar5;" (assignment_expression "_in = (undefined **)paVar5" identifier = (cast_expression "(undefined **)paVar5" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "*(undefined **)(&in + *(int *)(puVar8 + -0xc)) = puVar9;" (assignment_expression "*(undefined **)(&in + *(int *)(puVar8 + -0xc)) = puVar9" (pointer_expression "*(undefined **)(&in + *(int *)(puVar8 + -0xc))" * (cast_expression "(undefined **)(&in + *(int *)(puVar8 + -0xc))" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&in + *(int *)(puVar8 + -0xc))" ( (binary_expression "&in + *(int *)(puVar8 + -0xc)" (pointer_expression "&in" & identifier) + (pointer_expression "*(int *)(puVar8 + -0xc)" * (cast_expression "(int *)(puVar8 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0xc)" ( (binary_expression "puVar8 + -0xc" identifier + number_literal) ))))) )))) = identifier) ;) (expression_statement "local_a4[0] = &PTR__ios_0038c7b8;" (assignment_expression "local_a4[0] = &PTR__ios_0038c7b8" (subscript_expression "local_a4[0]" identifier [ number_literal ]) = (pointer_expression "&PTR__ios_0038c7b8" & identifier)) ;) (labeled_statement "std::ios_base::~ios_base((ios_base *)local_a4);" statement_identifier : (ERROR ":" :) (labeled_statement "ios_base::~ios_base((ios_base *)local_a4);" statement_identifier : (ERROR ":" :) (expression_statement "~ios_base((ios_base *)local_a4);" (unary_expression "~ios_base((ios_base *)local_a4)" ~ (call_expression "ios_base((ios_base *)local_a4)" identifier (argument_list "((ios_base *)local_a4)" ( (cast_expression "(ios_base *)local_a4" ( (type_descriptor "ios_base *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;))) })) (if_statement "if (((this->Bgroup_).value != false) && ((this->unresolved_symbols_).user_set_via_option == false)\n     ) {\n    (this->unresolved_symbols_).value = "report-all";\n  }" if (parenthesized_expression "(((this->Bgroup_).value != false) && ((this->unresolved_symbols_).user_set_via_option == false)\n     )" ( (binary_expression "((this->Bgroup_).value != false) && ((this->unresolved_symbols_).user_set_via_option == false)" (parenthesized_expression "((this->Bgroup_).value != false)" ( (binary_expression "(this->Bgroup_).value != false" (field_expression "(this->Bgroup_).value" (parenthesized_expression "(this->Bgroup_)" ( (field_expression "this->Bgroup_" identifier -> field_identifier) )) . field_identifier) != false) )) && (parenthesized_expression "((this->unresolved_symbols_).user_set_via_option == false)" ( (binary_expression "(this->unresolved_symbols_).user_set_via_option == false" (field_expression "(this->unresolved_symbols_).user_set_via_option" (parenthesized_expression "(this->unresolved_symbols_)" ( (field_expression "this->unresolved_symbols_" identifier -> field_identifier) )) . field_identifier) == false) ))) )) (compound_statement "{\n    (this->unresolved_symbols_).value = "report-all";\n  }" { (expression_statement "(this->unresolved_symbols_).value = "report-all";" (assignment_expression "(this->unresolved_symbols_).value = "report-all"" (field_expression "(this->unresolved_symbols_).value" (parenthesized_expression "(this->unresolved_symbols_)" ( (field_expression "this->unresolved_symbols_" identifier -> field_identifier) )) . field_identifier) = (string_literal ""report-all"" " string_content ")) ;) })) (if_statement "if (((this->shared_).value != false) &&\n     ((this->allow_shlib_undefined_).user_set_via_option == false)) {\n    (this->allow_shlib_undefined_).value = true;\n  }" if (parenthesized_expression "(((this->shared_).value != false) &&\n     ((this->allow_shlib_undefined_).user_set_via_option == false))" ( (binary_expression "((this->shared_).value != false) &&\n     ((this->allow_shlib_undefined_).user_set_via_option == false)" (parenthesized_expression "((this->shared_).value != false)" ( (binary_expression "(this->shared_).value != false" (field_expression "(this->shared_).value" (parenthesized_expression "(this->shared_)" ( (field_expression "this->shared_" identifier -> field_identifier) )) . field_identifier) != false) )) && (parenthesized_expression "((this->allow_shlib_undefined_).user_set_via_option == false)" ( (binary_expression "(this->allow_shlib_undefined_).user_set_via_option == false" (field_expression "(this->allow_shlib_undefined_).user_set_via_option" (parenthesized_expression "(this->allow_shlib_undefined_)" ( (field_expression "this->allow_shlib_undefined_" identifier -> field_identifier) )) . field_identifier) == false) ))) )) (compound_statement "{\n    (this->allow_shlib_undefined_).value = true;\n  }" { (expression_statement "(this->allow_shlib_undefined_).value = true;" (assignment_expression "(this->allow_shlib_undefined_).value = true" (field_expression "(this->allow_shlib_undefined_).value" (parenthesized_expression "(this->allow_shlib_undefined_)" ( (field_expression "this->allow_shlib_undefined_" identifier -> field_identifier) )) . field_identifier) = true) ;) })) comment (expression_statement "add_sysroot(this);" (call_expression "add_sysroot(this)" identifier (argument_list "(this)" ( identifier ))) ;) (if_statement "if ((this->shared_).value == false) {\n    if ((this->pie_).value != false) {\n      if (this->static_ != false) {\n        pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8b0f to 000e8b13 has its CatchHandler @ 000e8b37 */\n        gold_fatal(pcVar15);\n      }\n      if ((this->relocatable_).value != false) {\n        pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n        gold_fatal(pcVar15);\n      }\n    }\n    if ((this->filter_).value != (char *)0x0) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n    if ((this->auxiliary_).value._M_h._M_element_count != 0) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e89c3 to 000e89c7 has its CatchHandler @ 000e8b37 */\n      gold_fatal(pcVar15);\n    }\n    if (((this->relocatable_).value != false) && ((this->retain_symbols_file_).value != (char *)0x0)\n       ) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n  }\n  else {\n    if (this->static_ != false) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n    if ((this->pie_).value != false) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n    if ((this->relocatable_).value != false) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n  }" if (parenthesized_expression "((this->shared_).value == false)" ( (binary_expression "(this->shared_).value == false" (field_expression "(this->shared_).value" (parenthesized_expression "(this->shared_)" ( (field_expression "this->shared_" identifier -> field_identifier) )) . field_identifier) == false) )) (compound_statement "{\n    if ((this->pie_).value != false) {\n      if (this->static_ != false) {\n        pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8b0f to 000e8b13 has its CatchHandler @ 000e8b37 */\n        gold_fatal(pcVar15);\n      }\n      if ((this->relocatable_).value != false) {\n        pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n        gold_fatal(pcVar15);\n      }\n    }\n    if ((this->filter_).value != (char *)0x0) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n    if ((this->auxiliary_).value._M_h._M_element_count != 0) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e89c3 to 000e89c7 has its CatchHandler @ 000e8b37 */\n      gold_fatal(pcVar15);\n    }\n    if (((this->relocatable_).value != false) && ((this->retain_symbols_file_).value != (char *)0x0)\n       ) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n  }" { (if_statement "if ((this->pie_).value != false) {\n      if (this->static_ != false) {\n        pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8b0f to 000e8b13 has its CatchHandler @ 000e8b37 */\n        gold_fatal(pcVar15);\n      }\n      if ((this->relocatable_).value != false) {\n        pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n        gold_fatal(pcVar15);\n      }\n    }" if (parenthesized_expression "((this->pie_).value != false)" ( (binary_expression "(this->pie_).value != false" (field_expression "(this->pie_).value" (parenthesized_expression "(this->pie_)" ( (field_expression "this->pie_" identifier -> field_identifier) )) . field_identifier) != false) )) (compound_statement "{\n      if (this->static_ != false) {\n        pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8b0f to 000e8b13 has its CatchHandler @ 000e8b37 */\n        gold_fatal(pcVar15);\n      }\n      if ((this->relocatable_).value != false) {\n        pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n        gold_fatal(pcVar15);\n      }\n    }" { (if_statement "if (this->static_ != false) {\n        pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8b0f to 000e8b13 has its CatchHandler @ 000e8b37 */\n        gold_fatal(pcVar15);\n      }" if (parenthesized_expression "(this->static_ != false)" ( (binary_expression "this->static_ != false" (field_expression "this->static_" identifier -> field_identifier) != false) )) (compound_statement "{\n        pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8b0f to 000e8b13 has its CatchHandler @ 000e8b37 */\n        gold_fatal(pcVar15);\n      }" { (expression_statement "pcVar15 = (char *)gettext();" (assignment_expression "pcVar15 = (char *)gettext()" identifier = (cast_expression "(char *)gettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext()" identifier (argument_list "()" ( ))))) ;) comment comment (expression_statement "gold_fatal(pcVar15);" (call_expression "gold_fatal(pcVar15)" identifier (argument_list "(pcVar15)" ( identifier ))) ;) })) (if_statement "if ((this->relocatable_).value != false) {\n        pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n        gold_fatal(pcVar15);\n      }" if (parenthesized_expression "((this->relocatable_).value != false)" ( (binary_expression "(this->relocatable_).value != false" (field_expression "(this->relocatable_).value" (parenthesized_expression "(this->relocatable_)" ( (field_expression "this->relocatable_" identifier -> field_identifier) )) . field_identifier) != false) )) (compound_statement "{\n        pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n        gold_fatal(pcVar15);\n      }" { (expression_statement "pcVar15 = (char *)gettext();" (assignment_expression "pcVar15 = (char *)gettext()" identifier = (cast_expression "(char *)gettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext()" identifier (argument_list "()" ( ))))) ;) comment (expression_statement "gold_fatal(pcVar15);" (call_expression "gold_fatal(pcVar15)" identifier (argument_list "(pcVar15)" ( identifier ))) ;) })) })) (if_statement "if ((this->filter_).value != (char *)0x0) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }" if (parenthesized_expression "((this->filter_).value != (char *)0x0)" ( (binary_expression "(this->filter_).value != (char *)0x0" (field_expression "(this->filter_).value" (parenthesized_expression "(this->filter_)" ( (field_expression "this->filter_" identifier -> field_identifier) )) . field_identifier) != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }" { (expression_statement "pcVar15 = (char *)gettext();" (assignment_expression "pcVar15 = (char *)gettext()" identifier = (cast_expression "(char *)gettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext()" identifier (argument_list "()" ( ))))) ;) comment (expression_statement "gold_fatal(pcVar15);" (call_expression "gold_fatal(pcVar15)" identifier (argument_list "(pcVar15)" ( identifier ))) ;) })) (if_statement "if ((this->auxiliary_).value._M_h._M_element_count != 0) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e89c3 to 000e89c7 has its CatchHandler @ 000e8b37 */\n      gold_fatal(pcVar15);\n    }" if (parenthesized_expression "((this->auxiliary_).value._M_h._M_element_count != 0)" ( (binary_expression "(this->auxiliary_).value._M_h._M_element_count != 0" (field_expression "(this->auxiliary_).value._M_h._M_element_count" (field_expression "(this->auxiliary_).value._M_h" (field_expression "(this->auxiliary_).value" (parenthesized_expression "(this->auxiliary_)" ( (field_expression "this->auxiliary_" identifier -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier) != number_literal) )) (compound_statement "{\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e89c3 to 000e89c7 has its CatchHandler @ 000e8b37 */\n      gold_fatal(pcVar15);\n    }" { (expression_statement "pcVar15 = (char *)gettext();" (assignment_expression "pcVar15 = (char *)gettext()" identifier = (cast_expression "(char *)gettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext()" identifier (argument_list "()" ( ))))) ;) comment comment (expression_statement "gold_fatal(pcVar15);" (call_expression "gold_fatal(pcVar15)" identifier (argument_list "(pcVar15)" ( identifier ))) ;) })) (if_statement "if (((this->relocatable_).value != false) && ((this->retain_symbols_file_).value != (char *)0x0)\n       ) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }" if (parenthesized_expression "(((this->relocatable_).value != false) && ((this->retain_symbols_file_).value != (char *)0x0)\n       )" ( (binary_expression "((this->relocatable_).value != false) && ((this->retain_symbols_file_).value != (char *)0x0)" (parenthesized_expression "((this->relocatable_).value != false)" ( (binary_expression "(this->relocatable_).value != false" (field_expression "(this->relocatable_).value" (parenthesized_expression "(this->relocatable_)" ( (field_expression "this->relocatable_" identifier -> field_identifier) )) . field_identifier) != false) )) && (parenthesized_expression "((this->retain_symbols_file_).value != (char *)0x0)" ( (binary_expression "(this->retain_symbols_file_).value != (char *)0x0" (field_expression "(this->retain_symbols_file_).value" (parenthesized_expression "(this->retain_symbols_file_)" ( (field_expression "this->retain_symbols_file_" identifier -> field_identifier) )) . field_identifier) != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (compound_statement "{\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }" { (expression_statement "pcVar15 = (char *)gettext();" (assignment_expression "pcVar15 = (char *)gettext()" identifier = (cast_expression "(char *)gettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext()" identifier (argument_list "()" ( ))))) ;) comment (expression_statement "gold_fatal(pcVar15);" (call_expression "gold_fatal(pcVar15)" identifier (argument_list "(pcVar15)" ( identifier ))) ;) })) }) (else_clause "else {\n    if (this->static_ != false) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n    if ((this->pie_).value != false) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n    if ((this->relocatable_).value != false) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n  }" else (compound_statement "{\n    if (this->static_ != false) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n    if ((this->pie_).value != false) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n    if ((this->relocatable_).value != false) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }\n  }" { (if_statement "if (this->static_ != false) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }" if (parenthesized_expression "(this->static_ != false)" ( (binary_expression "this->static_ != false" (field_expression "this->static_" identifier -> field_identifier) != false) )) (compound_statement "{\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }" { (expression_statement "pcVar15 = (char *)gettext();" (assignment_expression "pcVar15 = (char *)gettext()" identifier = (cast_expression "(char *)gettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext()" identifier (argument_list "()" ( ))))) ;) comment (expression_statement "gold_fatal(pcVar15);" (call_expression "gold_fatal(pcVar15)" identifier (argument_list "(pcVar15)" ( identifier ))) ;) })) (if_statement "if ((this->pie_).value != false) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }" if (parenthesized_expression "((this->pie_).value != false)" ( (binary_expression "(this->pie_).value != false" (field_expression "(this->pie_).value" (parenthesized_expression "(this->pie_)" ( (field_expression "this->pie_" identifier -> field_identifier) )) . field_identifier) != false) )) (compound_statement "{\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }" { (expression_statement "pcVar15 = (char *)gettext();" (assignment_expression "pcVar15 = (char *)gettext()" identifier = (cast_expression "(char *)gettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext()" identifier (argument_list "()" ( ))))) ;) comment (expression_statement "gold_fatal(pcVar15);" (call_expression "gold_fatal(pcVar15)" identifier (argument_list "(pcVar15)" ( identifier ))) ;) })) (if_statement "if ((this->relocatable_).value != false) {\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }" if (parenthesized_expression "((this->relocatable_).value != false)" ( (binary_expression "(this->relocatable_).value != false" (field_expression "(this->relocatable_).value" (parenthesized_expression "(this->relocatable_)" ( (field_expression "this->relocatable_" identifier -> field_identifier) )) . field_identifier) != false) )) (compound_statement "{\n      pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n      gold_fatal(pcVar15);\n    }" { (expression_statement "pcVar15 = (char *)gettext();" (assignment_expression "pcVar15 = (char *)gettext()" identifier = (cast_expression "(char *)gettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext()" identifier (argument_list "()" ( ))))) ;) comment (expression_statement "gold_fatal(pcVar15);" (call_expression "gold_fatal(pcVar15)" identifier (argument_list "(pcVar15)" ( identifier ))) ;) })) }))) (expression_statement "OVar12 = string_to_object_format((this->oformat_).value);" (assignment_expression "OVar12 = string_to_object_format((this->oformat_).value)" identifier = (call_expression "string_to_object_format((this->oformat_).value)" identifier (argument_list "((this->oformat_).value)" ( (field_expression "(this->oformat_).value" (parenthesized_expression "(this->oformat_)" ( (field_expression "this->oformat_" identifier -> field_identifier) )) . field_identifier) )))) ;) (if_statement "if ((OVar12 != OBJECT_FORMAT_ELF) &&\n     ((((this->shared_).value != false || ((this->pie_).value != false)) ||\n      ((this->relocatable_).value != false)))) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }" if (parenthesized_expression "((OVar12 != OBJECT_FORMAT_ELF) &&\n     ((((this->shared_).value != false || ((this->pie_).value != false)) ||\n      ((this->relocatable_).value != false))))" ( (binary_expression "(OVar12 != OBJECT_FORMAT_ELF) &&\n     ((((this->shared_).value != false || ((this->pie_).value != false)) ||\n      ((this->relocatable_).value != false)))" (parenthesized_expression "(OVar12 != OBJECT_FORMAT_ELF)" ( (binary_expression "OVar12 != OBJECT_FORMAT_ELF" identifier != identifier) )) && (parenthesized_expression "((((this->shared_).value != false || ((this->pie_).value != false)) ||\n      ((this->relocatable_).value != false)))" ( (parenthesized_expression "(((this->shared_).value != false || ((this->pie_).value != false)) ||\n      ((this->relocatable_).value != false))" ( (binary_expression "((this->shared_).value != false || ((this->pie_).value != false)) ||\n      ((this->relocatable_).value != false)" (parenthesized_expression "((this->shared_).value != false || ((this->pie_).value != false))" ( (binary_expression "(this->shared_).value != false || ((this->pie_).value != false)" (binary_expression "(this->shared_).value != false" (field_expression "(this->shared_).value" (parenthesized_expression "(this->shared_)" ( (field_expression "this->shared_" identifier -> field_identifier) )) . field_identifier) != false) || (parenthesized_expression "((this->pie_).value != false)" ( (binary_expression "(this->pie_).value != false" (field_expression "(this->pie_).value" (parenthesized_expression "(this->pie_)" ( (field_expression "this->pie_" identifier -> field_identifier) )) . field_identifier) != false) ))) )) || (parenthesized_expression "((this->relocatable_).value != false)" ( (binary_expression "(this->relocatable_).value != false" (field_expression "(this->relocatable_).value" (parenthesized_expression "(this->relocatable_)" ( (field_expression "this->relocatable_" identifier -> field_identifier) )) . field_identifier) != false) ))) )) ))) )) (compound_statement "{\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }" { (expression_statement "pcVar15 = (char *)gettext();" (assignment_expression "pcVar15 = (char *)gettext()" identifier = (cast_expression "(char *)gettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext()" identifier (argument_list "()" ( ))))) ;) comment (expression_statement "gold_fatal(pcVar15);" (call_expression "gold_fatal(pcVar15)" identifier (argument_list "(pcVar15)" ( identifier ))) ;) })) (if_statement "if (((this->hash_bucket_empty_fraction_).user_set_via_option != false) &&\n     ((dVar4 = (this->hash_bucket_empty_fraction_).value, dVar4 < 0.0 || (1.0 <= dVar4)))) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88d9 to 000e8993 has its CatchHandler @ 000e8b37 */\n    gold_fatal(pcVar15);\n  }" if (parenthesized_expression "(((this->hash_bucket_empty_fraction_).user_set_via_option != false) &&\n     ((dVar4 = (this->hash_bucket_empty_fraction_).value, dVar4 < 0.0 || (1.0 <= dVar4))))" ( (binary_expression "((this->hash_bucket_empty_fraction_).user_set_via_option != false) &&\n     ((dVar4 = (this->hash_bucket_empty_fraction_).value, dVar4 < 0.0 || (1.0 <= dVar4)))" (parenthesized_expression "((this->hash_bucket_empty_fraction_).user_set_via_option != false)" ( (binary_expression "(this->hash_bucket_empty_fraction_).user_set_via_option != false" (field_expression "(this->hash_bucket_empty_fraction_).user_set_via_option" (parenthesized_expression "(this->hash_bucket_empty_fraction_)" ( (field_expression "this->hash_bucket_empty_fraction_" identifier -> field_identifier) )) . field_identifier) != false) )) && (parenthesized_expression "((dVar4 = (this->hash_bucket_empty_fraction_).value, dVar4 < 0.0 || (1.0 <= dVar4)))" ( (parenthesized_expression "(dVar4 = (this->hash_bucket_empty_fraction_).value, dVar4 < 0.0 || (1.0 <= dVar4))" ( (comma_expression "dVar4 = (this->hash_bucket_empty_fraction_).value, dVar4 < 0.0 || (1.0 <= dVar4)" (assignment_expression "dVar4 = (this->hash_bucket_empty_fraction_).value" identifier = (field_expression "(this->hash_bucket_empty_fraction_).value" (parenthesized_expression "(this->hash_bucket_empty_fraction_)" ( (field_expression "this->hash_bucket_empty_fraction_" identifier -> field_identifier) )) . field_identifier)) , (binary_expression "dVar4 < 0.0 || (1.0 <= dVar4)" (binary_expression "dVar4 < 0.0" identifier < number_literal) || (parenthesized_expression "(1.0 <= dVar4)" ( (binary_expression "1.0 <= dVar4" number_literal <= identifier) )))) )) ))) )) (compound_statement "{\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e88d9 to 000e8993 has its CatchHandler @ 000e8b37 */\n    gold_fatal(pcVar15);\n  }" { (expression_statement "pcVar15 = (char *)gettext();" (assignment_expression "pcVar15 = (char *)gettext()" identifier = (cast_expression "(char *)gettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext()" identifier (argument_list "()" ( ))))) ;) comment comment (expression_statement "gold_fatal(pcVar15);" (call_expression "gold_fatal(pcVar15)" identifier (argument_list "(pcVar15)" ( identifier ))) ;) })) (if_statement "if (this->implicit_incremental_ == false) {\n    if (this->incremental_mode_ == INCREMENTAL_OFF) goto LAB_000e7d53;\n  }\n  else if (this->incremental_mode_ == INCREMENTAL_OFF) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }" if (parenthesized_expression "(this->implicit_incremental_ == false)" ( (binary_expression "this->implicit_incremental_ == false" (field_expression "this->implicit_incremental_" identifier -> field_identifier) == false) )) (compound_statement "{\n    if (this->incremental_mode_ == INCREMENTAL_OFF) goto LAB_000e7d53;\n  }" { (if_statement "if (this->incremental_mode_ == INCREMENTAL_OFF) goto LAB_000e7d53;" if (parenthesized_expression "(this->incremental_mode_ == INCREMENTAL_OFF)" ( (binary_expression "this->incremental_mode_ == INCREMENTAL_OFF" (field_expression "this->incremental_mode_" identifier -> field_identifier) == identifier) )) (goto_statement "goto LAB_000e7d53;" goto statement_identifier ;)) }) (else_clause "else if (this->incremental_mode_ == INCREMENTAL_OFF) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }" else (if_statement "if (this->incremental_mode_ == INCREMENTAL_OFF) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }" if (parenthesized_expression "(this->incremental_mode_ == INCREMENTAL_OFF)" ( (binary_expression "this->incremental_mode_ == INCREMENTAL_OFF" (field_expression "this->incremental_mode_" identifier -> field_identifier) == identifier) )) (compound_statement "{\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }" { (expression_statement "pcVar15 = (char *)gettext();" (assignment_expression "pcVar15 = (char *)gettext()" identifier = (cast_expression "(char *)gettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext()" identifier (argument_list "()" ( ))))) ;) comment (expression_statement "gold_fatal(pcVar15);" (call_expression "gold_fatal(pcVar15)" identifier (argument_list "(pcVar15)" ( identifier ))) ;) })))) (if_statement "if ((this->relocatable_).value != false) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }" if (parenthesized_expression "((this->relocatable_).value != false)" ( (binary_expression "(this->relocatable_).value != false" (field_expression "(this->relocatable_).value" (parenthesized_expression "(this->relocatable_)" ( (field_expression "this->relocatable_" identifier -> field_identifier) )) . field_identifier) != false) )) (compound_statement "{\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }" { (expression_statement "pcVar15 = (char *)gettext();" (assignment_expression "pcVar15 = (char *)gettext()" identifier = (cast_expression "(char *)gettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext()" identifier (argument_list "()" ( ))))) ;) comment (expression_statement "gold_fatal(pcVar15);" (call_expression "gold_fatal(pcVar15)" identifier (argument_list "(pcVar15)" ( identifier ))) ;) })) (if_statement "if ((this->emit_relocs_).value != false) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }" if (parenthesized_expression "((this->emit_relocs_).value != false)" ( (binary_expression "(this->emit_relocs_).value != false" (field_expression "(this->emit_relocs_).value" (parenthesized_expression "(this->emit_relocs_)" ( (field_expression "this->emit_relocs_" identifier -> field_identifier) )) . field_identifier) != false) )) (compound_statement "{\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }" { (expression_statement "pcVar15 = (char *)gettext();" (assignment_expression "pcVar15 = (char *)gettext()" identifier = (cast_expression "(char *)gettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext()" identifier (argument_list "()" ( ))))) ;) comment (expression_statement "gold_fatal(pcVar15);" (call_expression "gold_fatal(pcVar15)" identifier (argument_list "(pcVar15)" ( identifier ))) ;) })) (if_statement "if (this->plugins_ != (Plugin_manager *)0x0) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }" if (parenthesized_expression "(this->plugins_ != (Plugin_manager *)0x0)" ( (binary_expression "this->plugins_ != (Plugin_manager *)0x0" (field_expression "this->plugins_" identifier -> field_identifier) != (cast_expression "(Plugin_manager *)0x0" ( (type_descriptor "Plugin_manager *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }" { (expression_statement "pcVar15 = (char *)gettext();" (assignment_expression "pcVar15 = (char *)gettext()" identifier = (cast_expression "(char *)gettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext()" identifier (argument_list "()" ( ))))) ;) comment (expression_statement "gold_fatal(pcVar15);" (call_expression "gold_fatal(pcVar15)" identifier (argument_list "(pcVar15)" ( identifier ))) ;) })) (if_statement "if ((this->relro_).value != false) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8a2b to 000e8ae9 has its CatchHandler @ 000e8b37 */\n    gold_fatal(pcVar15);\n  }" if (parenthesized_expression "((this->relro_).value != false)" ( (binary_expression "(this->relro_).value != false" (field_expression "(this->relro_).value" (parenthesized_expression "(this->relro_)" ( (field_expression "this->relro_" identifier -> field_identifier) )) . field_identifier) != false) )) (compound_statement "{\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n                    /* try { // try from 000e8a2b to 000e8ae9 has its CatchHandler @ 000e8b37 */\n    gold_fatal(pcVar15);\n  }" { (expression_statement "pcVar15 = (char *)gettext();" (assignment_expression "pcVar15 = (char *)gettext()" identifier = (cast_expression "(char *)gettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext()" identifier (argument_list "()" ( ))))) ;) comment comment (expression_statement "gold_fatal(pcVar15);" (call_expression "gold_fatal(pcVar15)" identifier (argument_list "(pcVar15)" ( identifier ))) ;) })) (if_statement "if ((this->pie_).value != false) {\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }" if (parenthesized_expression "((this->pie_).value != false)" ( (binary_expression "(this->pie_).value != false" (field_expression "(this->pie_).value" (parenthesized_expression "(this->pie_)" ( (field_expression "this->pie_" identifier -> field_identifier) )) . field_identifier) != false) )) (compound_statement "{\n    pcVar15 = (char *)gettext();\n                    /* WARNING: Subroutine does not return */\n    gold_fatal(pcVar15);\n  }" { (expression_statement "pcVar15 = (char *)gettext();" (assignment_expression "pcVar15 = (char *)gettext()" identifier = (cast_expression "(char *)gettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext()" identifier (argument_list "()" ( ))))) ;) comment (expression_statement "gold_fatal(pcVar15);" (call_expression "gold_fatal(pcVar15)" identifier (argument_list "(pcVar15)" ( identifier ))) ;) })) (if_statement "if ((this->gc_sections_).value != false) {\n    pcVar15 = (char *)gettext();\n    gold_warning(pcVar15);\n    (this->gc_sections_).value = false;\n  }" if (parenthesized_expression "((this->gc_sections_).value != false)" ( (binary_expression "(this->gc_sections_).value != false" (field_expression "(this->gc_sections_).value" (parenthesized_expression "(this->gc_sections_)" ( (field_expression "this->gc_sections_" identifier -> field_identifier) )) . field_identifier) != false) )) (compound_statement "{\n    pcVar15 = (char *)gettext();\n    gold_warning(pcVar15);\n    (this->gc_sections_).value = false;\n  }" { (expression_statement "pcVar15 = (char *)gettext();" (assignment_expression "pcVar15 = (char *)gettext()" identifier = (cast_expression "(char *)gettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "gold_warning(pcVar15);" (call_expression "gold_warning(pcVar15)" identifier (argument_list "(pcVar15)" ( identifier ))) ;) (expression_statement "(this->gc_sections_).value = false;" (assignment_expression "(this->gc_sections_).value = false" (field_expression "(this->gc_sections_).value" (parenthesized_expression "(this->gc_sections_)" ( (field_expression "this->gc_sections_" identifier -> field_identifier) )) . field_identifier) = false) ;) })) (expression_statement "bVar23 = this->icf_status_ == ICF_NONE;" (assignment_expression "bVar23 = this->icf_status_ == ICF_NONE" identifier = (binary_expression "this->icf_status_ == ICF_NONE" (field_expression "this->icf_status_" identifier -> field_identifier) == identifier)) ;) (expression_statement "bVar25 = !bVar23;" (assignment_expression "bVar25 = !bVar23" identifier = (unary_expression "!bVar23" ! identifier)) ;) (if_statement "if (bVar25) {\n    pcVar15 = (char *)gettext();\n    gold_warning(pcVar15);\n    this->icf_status_ = ICF_NONE;\n  }" if (parenthesized_expression "(bVar25)" ( identifier )) (compound_statement "{\n    pcVar15 = (char *)gettext();\n    gold_warning(pcVar15);\n    this->icf_status_ = ICF_NONE;\n  }" { (expression_statement "pcVar15 = (char *)gettext();" (assignment_expression "pcVar15 = (char *)gettext()" identifier = (cast_expression "(char *)gettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "gold_warning(pcVar15);" (call_expression "gold_warning(pcVar15)" identifier (argument_list "(pcVar15)" ( identifier ))) ;) (expression_statement "this->icf_status_ = ICF_NONE;" (assignment_expression "this->icf_status_ = ICF_NONE" (field_expression "this->icf_status_" identifier -> field_identifier) = identifier) ;) })) (expression_statement "bVar25 = bVar25 && (undefined1 *)0xffffffef < &stack0xfffffde4;" (assignment_expression "bVar25 = bVar25 && (undefined1 *)0xffffffef < &stack0xfffffde4" identifier = (binary_expression "bVar25 && (undefined1 *)0xffffffef < &stack0xfffffde4" identifier && (binary_expression "(undefined1 *)0xffffffef < &stack0xfffffde4" (cast_expression "(undefined1 *)0xffffffef" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) < (pointer_expression "&stack0xfffffde4" & identifier)))) ;) (expression_statement "bVar23 = bVar23 || &stack0x00000000 == (undefined1 *)0x20c;" (assignment_expression "bVar23 = bVar23 || &stack0x00000000 == (undefined1 *)0x20c" identifier = (binary_expression "bVar23 || &stack0x00000000 == (undefined1 *)0x20c" identifier || (binary_expression "&stack0x00000000 == (undefined1 *)0x20c" (pointer_expression "&stack0x00000000" & identifier) == (cast_expression "(undefined1 *)0x20c" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)))) ;) (expression_statement "iVar17 = 5;" (assignment_expression "iVar17 = 5" identifier = number_literal) ;) (expression_statement "pbVar20 = (byte *)(this->compress_debug_sections_).value;" (assignment_expression "pbVar20 = (byte *)(this->compress_debug_sections_).value" identifier = (cast_expression "(byte *)(this->compress_debug_sections_).value" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "(this->compress_debug_sections_).value" (parenthesized_expression "(this->compress_debug_sections_)" ( (field_expression "this->compress_debug_sections_" identifier -> field_identifier) )) . field_identifier))) ;) (do_statement "do {\n    if (iVar17 == 0) break;\n    iVar17 = iVar17 + -1;\n    bVar25 = *pbVar20 < *local_1f0;\n    bVar23 = *pbVar20 == *local_1f0;\n    pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n    local_1f0 = local_1f0 + (uint)bVar26 * -2 + 1;\n  } while (bVar23);" do (compound_statement "{\n    if (iVar17 == 0) break;\n    iVar17 = iVar17 + -1;\n    bVar25 = *pbVar20 < *local_1f0;\n    bVar23 = *pbVar20 == *local_1f0;\n    pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n    local_1f0 = local_1f0 + (uint)bVar26 * -2 + 1;\n  }" { (if_statement "if (iVar17 == 0) break;" if (parenthesized_expression "(iVar17 == 0)" ( (binary_expression "iVar17 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar17 = iVar17 + -1;" (assignment_expression "iVar17 = iVar17 + -1" identifier = (binary_expression "iVar17 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar20 < *local_1f0;" (assignment_expression "bVar25 = *pbVar20 < *local_1f0" identifier = (binary_expression "*pbVar20 < *local_1f0" (pointer_expression "*pbVar20" * identifier) < (pointer_expression "*local_1f0" * identifier))) ;) (expression_statement "bVar23 = *pbVar20 == *local_1f0;" (assignment_expression "bVar23 = *pbVar20 == *local_1f0" identifier = (binary_expression "*pbVar20 == *local_1f0" (pointer_expression "*pbVar20" * identifier) == (pointer_expression "*local_1f0" * identifier))) ;) (expression_statement "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1" identifier = (binary_expression "pbVar20 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar26 * -2" identifier + (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "local_1f0 = local_1f0 + (uint)bVar26 * -2 + 1;" (assignment_expression "local_1f0 = local_1f0 + (uint)bVar26 * -2 + 1" identifier = (binary_expression "local_1f0 + (uint)bVar26 * -2 + 1" (binary_expression "local_1f0 + (uint)bVar26 * -2" identifier + (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar23)" ( identifier )) ;) (if_statement "if ((!bVar25 && !bVar23) != bVar25) {\n    pcVar15 = (char *)gettext();\n                    /* try { // try from 000e86b2 to 000e8726 has its CatchHandler @ 000e8b37 */\n    gold_warning(pcVar15);\n    (this->compress_debug_sections_).value = "none";\n  }" if (parenthesized_expression "((!bVar25 && !bVar23) != bVar25)" ( (binary_expression "(!bVar25 && !bVar23) != bVar25" (parenthesized_expression "(!bVar25 && !bVar23)" ( (binary_expression "!bVar25 && !bVar23" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar23" ! identifier)) )) != identifier) )) (compound_statement "{\n    pcVar15 = (char *)gettext();\n                    /* try { // try from 000e86b2 to 000e8726 has its CatchHandler @ 000e8b37 */\n    gold_warning(pcVar15);\n    (this->compress_debug_sections_).value = "none";\n  }" { (expression_statement "pcVar15 = (char *)gettext();" (assignment_expression "pcVar15 = (char *)gettext()" identifier = (cast_expression "(char *)gettext()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext()" identifier (argument_list "()" ( ))))) ;) comment (expression_statement "gold_warning(pcVar15);" (call_expression "gold_warning(pcVar15)" identifier (argument_list "(pcVar15)" ( identifier ))) ;) (expression_statement "(this->compress_debug_sections_).value = "none";" (assignment_expression "(this->compress_debug_sections_).value = "none"" (field_expression "(this->compress_debug_sections_).value" (parenthesized_expression "(this->compress_debug_sections_)" ( (field_expression "this->compress_debug_sections_" identifier -> field_identifier) )) . field_identifier) = (string_literal ""none"" " string_content ")) ;) })) (labeled_statement "LAB_000e7d53:\n  if ((this->rosegment_gap_).user_set_via_option != false) {\n    (this->rosegment_).value = true;\n  }" statement_identifier : (if_statement "if ((this->rosegment_gap_).user_set_via_option != false) {\n    (this->rosegment_).value = true;\n  }" if (parenthesized_expression "((this->rosegment_gap_).user_set_via_option != false)" ( (binary_expression "(this->rosegment_gap_).user_set_via_option != false" (field_expression "(this->rosegment_gap_).user_set_via_option" (parenthesized_expression "(this->rosegment_gap_)" ( (field_expression "this->rosegment_gap_" identifier -> field_identifier) )) . field_identifier) != false) )) (compound_statement "{\n    (this->rosegment_).value = true;\n  }" { (expression_statement "(this->rosegment_).value = true;" (assignment_expression "(this->rosegment_).value = true" (field_expression "(this->rosegment_).value" (parenthesized_expression "(this->rosegment_)" ( (field_expression "this->rosegment_" identifier -> field_identifier) )) . field_identifier) = true) ;) }))) (if_statement "if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n       *)libpath._M_dataplus._M_p != paVar1) {\n    operator_delete(libpath._M_dataplus._M_p);\n  }" if (parenthesized_expression "((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n       *)libpath._M_dataplus._M_p != paVar1)" ( (parenthesized_expression "(anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n       *)libpath._M_dataplus._M_p != paVar1)" ( (ERROR "anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::" (comma_expression "anon_union_16_2_edb7204a_for_basic_string<char,_std" (binary_expression "anon_union_16_2_edb7204a_for_basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : :) (binary_expression "allocator<char>_>_9\n       *)libpath._M_dataplus._M_p != paVar1" (binary_expression "allocator<char>_>_9\n       *)libpath._M_dataplus._M_p" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (binary_expression "_9\n       *)libpath._M_dataplus._M_p" identifier * (ERROR ")" )) (field_expression "libpath._M_dataplus._M_p" (field_expression "libpath._M_dataplus" identifier . field_identifier) . field_identifier))) != identifier) )) )) (compound_statement "{\n    operator_delete(libpath._M_dataplus._M_p);\n  }" { (expression_statement "operator_delete(libpath._M_dataplus._M_p);" (call_expression "operator_delete(libpath._M_dataplus._M_p)" identifier (argument_list "(libpath._M_dataplus._M_p)" ( (field_expression "libpath._M_dataplus._M_p" (field_expression "libpath._M_dataplus" identifier . field_identifier) . field_identifier) ))) ;) })) (return_statement "return;" return ;) })))
(translation_unit "void FUN_000e74a0(int param_1)\n\n{\n  double dVar1;\n  undefined **ppuVar2;\n  undefined1 **ppuVar3;\n  undefined **ppuVar4;\n  char cVar5;\n  uint uVar6;\n  int *piVar7;\n  undefined4 *puVar8;\n  size_t sVar9;\n  uint uVar10;\n  undefined4 uVar11;\n  char *pcVar12;\n  undefined4 uVar13;\n  int iVar14;\n  undefined *puVar15;\n  uint uVar16;\n  undefined1 *puVar17;\n  undefined1 *puVar18;\n  byte *pbVar19;\n  byte *pbVar20;\n  byte *pbVar21;\n  bool bVar22;\n  bool bVar23;\n  bool bVar24;\n  byte bVar25;\n  undefined4 uStackY_230;\n  undefined1 auStack_20c [12];\n  undefined **local_200;\n  undefined **local_1fc;\n  undefined *local_1f8;\n  undefined ***local_1f4;\n  byte *local_1f0;\n  undefined1 *local_1ec;\n  undefined ***local_1e8;\n  undefined1 *local_1e4;\n  undefined1 *local_1e0;\n  undefined ***local_1dc;\n  uint local_1d8;\n  undefined1 **local_1d4;\n  undefined ***local_1d0;\n  double local_1cc;\n  undefined **local_1c4;\n  undefined1 local_1c0 [4];\n  undefined1 *local_1bc;\n  uint local_1b8;\n  undefined1 local_1b4 [16];\n  undefined1 *local_1a4;\n  int local_1a0;\n  undefined1 local_19c [16];\n  undefined2 local_18c;\n  undefined1 *local_188;\n  int local_184;\n  undefined1 local_180 [16];\n  undefined2 local_170;\n  undefined1 *local_16c;\n  int local_168;\n  undefined1 local_164 [16];\n  undefined2 local_154;\n  undefined1 *local_150;\n  int local_14c;\n  undefined1 local_148 [16];\n  undefined2 local_138;\n  undefined ***local_134;\n  int local_130;\n  undefined **local_12c [4];\n  undefined2 local_11c;\n  undefined1 local_110 [28];\n  undefined1 local_f4 [60];\n  int aiStack_b8 [5];\n  undefined **local_a4 [5];\n  byte local_90;\n  undefined4 local_34;\n  undefined2 local_30;\n  undefined4 local_2c;\n  undefined4 local_28;\n  undefined4 local_24;\n  undefined4 local_20;\n  \n  bVar25 = 0;\n  local_1c4 = &__DT_PLTGOT;\n  if (*(char *)(param_1 + 0x3469) == '\0') {\n    if (*(char *)(param_1 + 0x34e5) != '\0') goto LAB_000e79ea;\n    if (*(char *)(param_1 + 0x3561) != '\0') {\n      bVar24 = false;\n      goto LAB_000e79f9;\n    }\n    bVar24 = false;\n    if (*(char *)(param_1 + 0x7a9) != '\0') goto LAB_000e7a0c;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x34e5) = 1;\nLAB_000e79ea:\n    bVar24 = true;\n    *(undefined1 *)(param_1 + 0x3561) = 1;\nLAB_000e79f9:\n    *(undefined1 *)(param_1 + 0x35dd) = 1;\n    if (*(char *)(param_1 + 0x7a9) != '\0') {\nLAB_000e7a0c:\n      *(undefined1 *)(param_1 + 0x1a25) = 1;\n    }\n    if (((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&\n       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)) {\n      local_1c4 = &__DT_PLTGOT;\n                    \n      FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);\n    }\n  }\n  if (*(char *)(param_1 + 0xbcd) != '\0') {\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }\n  if (*(char *)(param_1 + 0xc49) != '\0') {\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }\n  if (*(char *)(param_1 + 0xb50) == '\0') {\n    local_1cc = (double)CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d));\n    *(byte *)(param_1 + 0xb51) = *(byte *)(param_1 + 0x318d) ^ 1;\n  }\n  bVar24 = *(char *)(param_1 + 0x4f31) == '\0';\n  if (bVar24) {\n    bVar24 = *(char *)(param_1 + 0x5545) == '\0';\n    if (!bVar24) {\n      *(undefined4 *)(param_1 + 0x5930) = 2;\n    }\n  }\n  else {\n    *(undefined4 *)(param_1 + 0x5930) = 1;\n  }\n  bVar22 = false;\n  iVar14 = 5;\n  local_1f0 = (byte *)0x28e9b2;\n  pbVar19 = *(byte **)(param_1 + 0x1bec);\n  pbVar20 = local_1f0;\n  do {\n    pbVar21 = pbVar20;\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    pbVar21 = pbVar20 + 1;\n    bVar22 = *pbVar19 < *pbVar20;\n    bVar24 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + 1;\n    pbVar20 = pbVar21;\n  } while (bVar24);\n  bVar23 = false;\n  bVar24 = (!bVar22 && !bVar24) == bVar22;\n  if (bVar24) {\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }\n  else {\n    iVar14 = 5;\n    pbVar19 = *(byte **)(param_1 + 0x1bec);\n    pbVar20 = (byte *)0x28e304;\n    do {\n      pbVar21 = pbVar20;\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      pbVar21 = pbVar20 + 1;\n      bVar23 = *pbVar19 < *pbVar20;\n      bVar24 = *pbVar19 == *pbVar20;\n      pbVar19 = pbVar19 + 1;\n      pbVar20 = pbVar21;\n    } while (bVar24);\n    *(uint *)(param_1 + 0x5934) = ((!bVar23 && !bVar24) == bVar23) + 1;\n  }\n  if (*(char *)(param_1 + 0xd4c) == '\0') {\n    if (*(char *)(param_1 + 0xd90) == '\0') {\n      local_1c4 = &__DT_PLTGOT;\n      pcVar12 = getenv("COLLECT_NO_DEMANGLE");\n      *(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0;\n    }\n    else {\n      *(undefined1 *)(param_1 + 0x5939) = 0;\n    }\n  }\n  else {\n    pcVar12 = *(char **)(param_1 + 0xd50);\n    *(undefined1 *)(param_1 + 0x5939) = 1;\n    local_1c4 = &__DT_PLTGOT;\n    if (*pcVar12 != '\0') {\n      iVar14 = FUN_001ce8a0(pcVar12);\n      if (iVar14 == 0) {\n                    \n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }\n      FUN_001ce850(iVar14);\n    }\n  }\n  ppuVar4 = local_1c4;\n  bVar24 = false;\n  bVar22 = *(char *)(param_1 + 0x2870) == '\0';\n  if (!bVar22) {\n    pbVar19 = *(byte **)(param_1 + 0x2874);\n    iVar14 = 6;\n    pbVar20 = pbVar19;\n    pbVar21 = (byte *)((int)local_1c4 + -0xeb29e);\n    do {\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar22 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n      pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n    } while (bVar22);\n    bVar23 = false;\n    bVar24 = (!bVar24 && !bVar22) == bVar24;\n    if (bVar24) {\n      *(undefined4 *)(param_1 + 0x5a88) = 0;\n    }\n    else {\n      iVar14 = 8;\n      pbVar20 = pbVar19;\n      pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar24 = (!bVar23 && !bVar24) == bVar23;\n      if (bVar24) {\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }\n      else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }\n    }\n  }\n  if ((*(char *)(param_1 + 0x2401) != '\0') && (*(char *)(param_1 + 0x247c) == '\0')) {\n    *(undefined1 *)(param_1 + 0x247c) = 1;\n    *(undefined ***)(param_1 + 0x2480) = local_1c4 + -0x4062a;\n  }\n  if ((*(char *)(param_1 + 0x24c1) != '\0') || (*(char *)(param_1 + 0x253d) != '\0')) {\n    *(undefined1 *)(param_1 + 0x5938) = 1;\n  }\n  iVar14 = *(int *)(param_1 + 0x3de8);\n  if (0 < iVar14) {\n    if (*(int *)(param_1 + 0x3e2c) == 0) {\n      *(int *)(param_1 + 0x3e2c) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3e70) == 0) {\n      *(int *)(param_1 + 0x3e70) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3eb4) == 0) {\n      *(int *)(param_1 + 0x3eb4) = iVar14;\n    }\n  }\n  local_1d4 = &local_1bc;\n  local_1b4[0] = 0;\n  local_1ec = local_1b4;\n  local_1b8 = 0;\n  local_1bc = local_1ec;\n  if (*(char *)(param_1 + 0x4ca8) == '\0') {\n    if (*(char *)(param_1 + 0x2729) == '\0') {\n      local_1dc = local_12c;\n      local_1d0 = (undefined ***)&local_134;\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0);\n      local_1a4 = local_19c;\n                    \n      FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_18c = 1;\n      if (local_1a0 == 0) {\n                    \n        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      local_1d8 = param_1 + 0x2184;\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_1a4);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_1a4 != local_19c) {\n        FUN_001e6db0(local_1a4);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0);\n      local_188 = local_180;\n                    \n      FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_170 = 1;\n      if (local_184 == 0) {\n                    \n        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_188);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_188 != local_180) {\n        FUN_001e6db0(local_188);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0);\n      local_16c = local_164;\n                    \n      FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_154 = 1;\n      if (local_168 == 0) {\n                    \n        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_16c);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_16c != local_164) {\n        FUN_001e6db0(local_16c);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0);\n      local_1e0 = local_148;\n      local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n      local_150 = local_1e0;\n                    \n      FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_138 = 1;\n      if (local_14c == 0) {\n                    \n        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_150 != local_1e0) {\n        FUN_001e6db0(local_150);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      goto LAB_000e7f08;\n    }\n  }\n  else {\n    pcVar12 = *(char **)(param_1 + 0x4cac);\n    sVar9 = strlen(pcVar12);\n    ppuVar3 = local_1d4;\n                    \n    FUN_001ef9f0(local_1d4,0,0,pcVar12,sVar9);\n    iVar14 = FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6);\n    if (iVar14 == 0) {\n      uVar6 = local_1b8;\n      if (2 < local_1b8) {\n        uVar6 = 2;\n      }\n                    \n      FUN_001eebf0(local_1d4,0,uVar6);\n    }\nLAB_000e7f08:\n    uVar6 = 0;\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n    if (local_1b8 != 0) {\n      do {\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    \n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      } while( true );\n    }\n  }\n  ppuVar4 = local_1c4;\n  puVar17 = auStack_20c;\n  puVar18 = auStack_20c;\n  if (*(int *)(param_1 + 0x3288) != 0) {\n    local_1e8 = local_a4;\n    local_1d0 = (undefined ***)&local_134;\n    FUN_0022bca0(local_1e8);\n    local_1fc = ppuVar4 + -0xa14;\n    local_34 = 0;\n    local_2c = 0;\n    local_a4[0] = ppuVar4 + -0xa12;\n    local_30 = 0;\n    local_28 = 0;\n    local_1f4 = (undefined ***)ppuVar4[-0x9d9];\n    local_1f8 = ppuVar4[-0x9d8];\n    local_24 = 0;\n    local_20 = 0;\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n                    \n    FUN_00211450((int)local_1f4[-3] + (int)&local_134,0);\n    local_200 = ppuVar4 + -0x9d6;\n    local_134 = (undefined ***)(ppuVar4 + -0x9d3);\n    local_a4[0] = ppuVar4 + -0x9ce;\n    local_1dc = local_12c;\n                    \n    FUN_00213670(local_12c);\n                    \n    FUN_00211450(local_1e8,local_12c);\n                    \n    iVar14 = FUN_00217950(local_12c,*(undefined4 *)(param_1 + 0x3288),8);\n    puVar15 = (undefined *)((int)local_1d0 + (int)local_134[-3]);\n    if (iVar14 == 0) {\n                    \n      FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4);\n    }\n    else {\n      FUN_00210c00(puVar15,0);\n    }\n    ppuVar4 = local_1c4;\n    if ((local_90 & 5) != 0) {\n      piVar7 = __errno_location();\n      pcVar12 = strerror(*piVar7);\n      uVar11 = *(undefined4 *)(param_1 + 0x3288);\n      uVar13 = gettext(local_1c4 + -0x3f6cb);\n                    \n                    \n      FUN_00065450(uVar13,uVar11,pcVar12);\n    }\n    local_1e0 = local_148;\n    local_148[0] = 0;\n    local_14c = 0;\n    piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n    local_150 = local_1e0;\n    if (piVar7 == (int *)0x0) {\n                    \n                    \n      FUN_0022c630();\n    }\n    if ((char)piVar7[7] == '\0') {\n                    \n      FUN_0022ccc0(piVar7);\n      iVar14 = 10;\n      if (*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0) {\n        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);\n        iVar14 = (int)cVar5;\n      }\n    }\n    else {\n      iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n    }\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n                    \n    FUN_001e7cb0(local_1d0,&local_150,iVar14);\n    local_1d4 = (undefined1 **)(param_1 + 0x5a3c);\n    local_1e4 = local_1c0;\n    while ((local_90 & 5) == 0) {\n      if ((local_14c != 0) && (local_150[local_14c + -1] == '\r')) {\n        *(undefined4 *)(puVar17 + -8) = 0;\n        *(int *)(puVar17 + -0xc) = local_14c + -1;\n        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;\n        FUN_001ef780();\n      }\n      *(undefined4 *)(puVar17 + -8) = 0xc70f6907;\n      *(int *)(puVar17 + -0xc) = local_14c;\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe793a;\n      uVar6 = FUN_001e52b0();\n      local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40);\n      *(uint *)(puVar17 + -0x14) = uVar6;\n      *(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_;\n      *(uint *)(puVar17 + -0x1c) = local_1d8;\n      *(undefined1 ***)(puVar17 + -0x20) = local_1d4;\n      *(undefined4 *)(puVar17 + -0x24) = 0xe7960;\n      piVar7 = (int *)FUN_000eadf0();\n      if ((piVar7 == (int *)0x0) || (*piVar7 == 0)) {\n        *(undefined4 *)(puVar17 + -0x10) = 0x20;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;\n        puVar8 = (undefined4 *)FUN_001e5200();\n        *puVar8 = 0;\n        puVar8[1] = puVar8 + 3;\n        *(undefined4 *)(puVar17 + -4) = 0;\n        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;\n        *(undefined1 **)(puVar17 + -0xc) = local_150;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;\n        FUN_000513a0();\n        *(undefined4 *)(puVar17 + -0xc) = 1;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8;\n        *(uint *)(puVar17 + -0x14) = uVar6;\n        *(uint *)(puVar17 + -0x18) = local_1d8;\n        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;\n        *(undefined1 **)(puVar17 + -0x20) = local_1e4;\n                    \n        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;\n        FUN_000ec3b0();\n        puVar17 = puVar17 + -4;\n      }\n      ppuVar4 = local_1c4;\n      piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n      if (piVar7 == (int *)0x0) {\n                    \n                    \n        *(undefined4 *)(puVar17 + -4) = 0xe88af;\n        FUN_0022c630();\n      }\n      if ((char)piVar7[7] == '\0') {\n        *(int **)(puVar17 + -0x10) = piVar7;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;\n        FUN_0022ccc0();\n        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);\n        iVar14 = 10;\n        if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }\n      }\n      else {\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }\n      *(int *)(puVar17 + -8) = iVar14;\n      *(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_;\n      *(undefined ****)(puVar17 + -0x10) = local_1d0;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe78f7;\n      FUN_001e7cb0();\n    }\n    if (local_150 != local_1e0) {\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe7aef;\n      FUN_001e6db0();\n    }\n    ppuVar4 = local_1c4;\n    *(undefined ****)(puVar17 + -0x10) = local_1dc;\n    local_134 = (undefined ***)(local_200 + 3);\n    local_a4[0] = local_200 + 8;\n    local_12c[0] = local_1c4 + -0x9f2;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b2f;\n    FUN_00216e90();\n    *(undefined1 **)(puVar17 + -0x10) = local_f4;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b3d;\n    FUN_001e75f0();\n    local_12c[0] = ppuVar4 + -0xbd7;\n    *(undefined1 **)(puVar17 + -0x10) = local_110;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b5a;\n    FUN_001e9510();\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n    local_a4[0] = local_1fc + 2;\n    *(undefined ****)(puVar17 + -0x10) = local_1e8;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b9b;\n    FUN_0022c040();\n    puVar18 = puVar17;\n  }\n  if ((*(char *)(param_1 + 0x72d) != '\0') && (*(char *)(param_1 + 0x42e0) == '\0')) {\n    *(int *)(param_1 + 0x42e4) = (int)local_1c4 + -0x10e8db;\n  }\n  if ((*(char *)(param_1 + 0x1a25) != '\0') && (*(char *)(param_1 + 0x1fc) == '\0')) {\n    *(undefined1 *)(param_1 + 0x1fd) = 1;\n  }\n  *(int *)(puVar18 + -0x10) = param_1;\n                    \n  *(undefined4 *)(puVar18 + -0x14) = 0xe7bef;\n  FUN_000ddde0();\n  if (*(char *)(param_1 + 0x1a25) == '\0') {\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      if (*(char *)(param_1 + 0x5938) != '\0') {\n        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;\n        FUN_00065450();\n      }\n      if (*(char *)(param_1 + 0x318d) != '\0') {\n        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;\n        FUN_00065450();\n      }\n    }\n    if (*(int *)(param_1 + 0x1478) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe898c;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8994;\n      FUN_00065450();\n    }\n    if (*(int *)(param_1 + 0x1428) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c0;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c8;\n      FUN_00065450();\n    }\n    if ((*(char *)(param_1 + 0x318d) != '\0') && (*(int *)(param_1 + 0x3288) != 0)) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe7e13;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b;\n      FUN_00065450();\n    }\n  }\n  else {\n    if (*(char *)(param_1 + 0x5938) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8aea;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe892f;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8937;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x318d) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe894e;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8956;\n      FUN_00065450();\n    }\n  }\n  *(undefined4 *)(puVar18 + -0x10) = *(undefined4 *)(param_1 + 0x27ec);\n  *(undefined4 *)(puVar18 + -0x14) = 0xe7c40;\n  iVar14 = FUN_000dd760();\n  if ((iVar14 != 0) &&\n     (((*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||\n      (*(char *)(param_1 + 0x318d) != '\0')))) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f678;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8910;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8918;\n    FUN_00065450();\n  }\n  if ((*(char *)(param_1 + 0x1ae4) != '\0') &&\n     ((dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1)))) {\n    local_1cc = dVar1;\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f668;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe88cc;\n    uVar11 = gettext();\n    dVar1 = local_1cc;\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(double *)(puVar18 + -0xc) = dVar1;\n                    \n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe88de;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x5a1c) == '\0') {\n    if (*(int *)(param_1 + 0x5a10) == 0) goto LAB_000e7d53;\n  }\n  else if (*(int *)(param_1 + 0x5a10) == 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a66;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a6e;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x318d) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f63c;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a85;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a8d;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x3095) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f630;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aa4;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aac;\n    FUN_00065450();\n  }\n  if (*(int *)(param_1 + 0x593c) != 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f621;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8ac3;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8acb;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x56b9) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f614;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a28;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a30;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x2931) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f607;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a47;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a4f;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x18b1) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5fb;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe871f;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8727;\n    FUN_000654e0();\n    *(undefined1 *)(param_1 + 0x18b1) = 0;\n  }\n  bVar22 = *(int *)(param_1 + 0x5934) == 0;\n  bVar24 = !bVar22;\n  if (bVar24) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5ef;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86e7;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86ef;\n    FUN_000654e0();\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }\n  bVar24 = bVar24 && (undefined1 *)0xffffffef < puVar18 + -0x10;\n  bVar22 = bVar22 || puVar18 == (undefined1 *)0x0;\n  iVar14 = 5;\n  pbVar19 = *(byte **)(param_1 + 0x99c);\n  pbVar20 = local_1f0;\n  do {\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    bVar24 = *pbVar19 < *pbVar20;\n    bVar22 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n    pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n  } while (bVar22);\n  if ((!bVar24 && !bVar22) != bVar24) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5e5;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86af;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe86b7;\n    FUN_000654e0();\n    *(byte **)(param_1 + 0x99c) = local_1f0;\n  }\nLAB_000e7d53:\n  if (*(char *)(param_1 + 0x3344) != '\0') {\n    *(undefined1 *)(param_1 + 0x32c9) = 1;\n  }\n  if (local_1bc != local_1ec) {\n    *(undefined1 **)(puVar18 + -0x10) = local_1bc;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe7d83;\n    FUN_001e6db0();\n  }\n  return;\n}\n\n" (function_definition "void FUN_000e74a0(int param_1)\n\n{\n  double dVar1;\n  undefined **ppuVar2;\n  undefined1 **ppuVar3;\n  undefined **ppuVar4;\n  char cVar5;\n  uint uVar6;\n  int *piVar7;\n  undefined4 *puVar8;\n  size_t sVar9;\n  uint uVar10;\n  undefined4 uVar11;\n  char *pcVar12;\n  undefined4 uVar13;\n  int iVar14;\n  undefined *puVar15;\n  uint uVar16;\n  undefined1 *puVar17;\n  undefined1 *puVar18;\n  byte *pbVar19;\n  byte *pbVar20;\n  byte *pbVar21;\n  bool bVar22;\n  bool bVar23;\n  bool bVar24;\n  byte bVar25;\n  undefined4 uStackY_230;\n  undefined1 auStack_20c [12];\n  undefined **local_200;\n  undefined **local_1fc;\n  undefined *local_1f8;\n  undefined ***local_1f4;\n  byte *local_1f0;\n  undefined1 *local_1ec;\n  undefined ***local_1e8;\n  undefined1 *local_1e4;\n  undefined1 *local_1e0;\n  undefined ***local_1dc;\n  uint local_1d8;\n  undefined1 **local_1d4;\n  undefined ***local_1d0;\n  double local_1cc;\n  undefined **local_1c4;\n  undefined1 local_1c0 [4];\n  undefined1 *local_1bc;\n  uint local_1b8;\n  undefined1 local_1b4 [16];\n  undefined1 *local_1a4;\n  int local_1a0;\n  undefined1 local_19c [16];\n  undefined2 local_18c;\n  undefined1 *local_188;\n  int local_184;\n  undefined1 local_180 [16];\n  undefined2 local_170;\n  undefined1 *local_16c;\n  int local_168;\n  undefined1 local_164 [16];\n  undefined2 local_154;\n  undefined1 *local_150;\n  int local_14c;\n  undefined1 local_148 [16];\n  undefined2 local_138;\n  undefined ***local_134;\n  int local_130;\n  undefined **local_12c [4];\n  undefined2 local_11c;\n  undefined1 local_110 [28];\n  undefined1 local_f4 [60];\n  int aiStack_b8 [5];\n  undefined **local_a4 [5];\n  byte local_90;\n  undefined4 local_34;\n  undefined2 local_30;\n  undefined4 local_2c;\n  undefined4 local_28;\n  undefined4 local_24;\n  undefined4 local_20;\n  \n  bVar25 = 0;\n  local_1c4 = &__DT_PLTGOT;\n  if (*(char *)(param_1 + 0x3469) == '\0') {\n    if (*(char *)(param_1 + 0x34e5) != '\0') goto LAB_000e79ea;\n    if (*(char *)(param_1 + 0x3561) != '\0') {\n      bVar24 = false;\n      goto LAB_000e79f9;\n    }\n    bVar24 = false;\n    if (*(char *)(param_1 + 0x7a9) != '\0') goto LAB_000e7a0c;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x34e5) = 1;\nLAB_000e79ea:\n    bVar24 = true;\n    *(undefined1 *)(param_1 + 0x3561) = 1;\nLAB_000e79f9:\n    *(undefined1 *)(param_1 + 0x35dd) = 1;\n    if (*(char *)(param_1 + 0x7a9) != '\0') {\nLAB_000e7a0c:\n      *(undefined1 *)(param_1 + 0x1a25) = 1;\n    }\n    if (((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&\n       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)) {\n      local_1c4 = &__DT_PLTGOT;\n                    \n      FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);\n    }\n  }\n  if (*(char *)(param_1 + 0xbcd) != '\0') {\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }\n  if (*(char *)(param_1 + 0xc49) != '\0') {\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }\n  if (*(char *)(param_1 + 0xb50) == '\0') {\n    local_1cc = (double)CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d));\n    *(byte *)(param_1 + 0xb51) = *(byte *)(param_1 + 0x318d) ^ 1;\n  }\n  bVar24 = *(char *)(param_1 + 0x4f31) == '\0';\n  if (bVar24) {\n    bVar24 = *(char *)(param_1 + 0x5545) == '\0';\n    if (!bVar24) {\n      *(undefined4 *)(param_1 + 0x5930) = 2;\n    }\n  }\n  else {\n    *(undefined4 *)(param_1 + 0x5930) = 1;\n  }\n  bVar22 = false;\n  iVar14 = 5;\n  local_1f0 = (byte *)0x28e9b2;\n  pbVar19 = *(byte **)(param_1 + 0x1bec);\n  pbVar20 = local_1f0;\n  do {\n    pbVar21 = pbVar20;\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    pbVar21 = pbVar20 + 1;\n    bVar22 = *pbVar19 < *pbVar20;\n    bVar24 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + 1;\n    pbVar20 = pbVar21;\n  } while (bVar24);\n  bVar23 = false;\n  bVar24 = (!bVar22 && !bVar24) == bVar22;\n  if (bVar24) {\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }\n  else {\n    iVar14 = 5;\n    pbVar19 = *(byte **)(param_1 + 0x1bec);\n    pbVar20 = (byte *)0x28e304;\n    do {\n      pbVar21 = pbVar20;\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      pbVar21 = pbVar20 + 1;\n      bVar23 = *pbVar19 < *pbVar20;\n      bVar24 = *pbVar19 == *pbVar20;\n      pbVar19 = pbVar19 + 1;\n      pbVar20 = pbVar21;\n    } while (bVar24);\n    *(uint *)(param_1 + 0x5934) = ((!bVar23 && !bVar24) == bVar23) + 1;\n  }\n  if (*(char *)(param_1 + 0xd4c) == '\0') {\n    if (*(char *)(param_1 + 0xd90) == '\0') {\n      local_1c4 = &__DT_PLTGOT;\n      pcVar12 = getenv("COLLECT_NO_DEMANGLE");\n      *(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0;\n    }\n    else {\n      *(undefined1 *)(param_1 + 0x5939) = 0;\n    }\n  }\n  else {\n    pcVar12 = *(char **)(param_1 + 0xd50);\n    *(undefined1 *)(param_1 + 0x5939) = 1;\n    local_1c4 = &__DT_PLTGOT;\n    if (*pcVar12 != '\0') {\n      iVar14 = FUN_001ce8a0(pcVar12);\n      if (iVar14 == 0) {\n                    \n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }\n      FUN_001ce850(iVar14);\n    }\n  }\n  ppuVar4 = local_1c4;\n  bVar24 = false;\n  bVar22 = *(char *)(param_1 + 0x2870) == '\0';\n  if (!bVar22) {\n    pbVar19 = *(byte **)(param_1 + 0x2874);\n    iVar14 = 6;\n    pbVar20 = pbVar19;\n    pbVar21 = (byte *)((int)local_1c4 + -0xeb29e);\n    do {\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar22 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n      pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n    } while (bVar22);\n    bVar23 = false;\n    bVar24 = (!bVar24 && !bVar22) == bVar24;\n    if (bVar24) {\n      *(undefined4 *)(param_1 + 0x5a88) = 0;\n    }\n    else {\n      iVar14 = 8;\n      pbVar20 = pbVar19;\n      pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar24 = (!bVar23 && !bVar24) == bVar23;\n      if (bVar24) {\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }\n      else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }\n    }\n  }\n  if ((*(char *)(param_1 + 0x2401) != '\0') && (*(char *)(param_1 + 0x247c) == '\0')) {\n    *(undefined1 *)(param_1 + 0x247c) = 1;\n    *(undefined ***)(param_1 + 0x2480) = local_1c4 + -0x4062a;\n  }\n  if ((*(char *)(param_1 + 0x24c1) != '\0') || (*(char *)(param_1 + 0x253d) != '\0')) {\n    *(undefined1 *)(param_1 + 0x5938) = 1;\n  }\n  iVar14 = *(int *)(param_1 + 0x3de8);\n  if (0 < iVar14) {\n    if (*(int *)(param_1 + 0x3e2c) == 0) {\n      *(int *)(param_1 + 0x3e2c) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3e70) == 0) {\n      *(int *)(param_1 + 0x3e70) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3eb4) == 0) {\n      *(int *)(param_1 + 0x3eb4) = iVar14;\n    }\n  }\n  local_1d4 = &local_1bc;\n  local_1b4[0] = 0;\n  local_1ec = local_1b4;\n  local_1b8 = 0;\n  local_1bc = local_1ec;\n  if (*(char *)(param_1 + 0x4ca8) == '\0') {\n    if (*(char *)(param_1 + 0x2729) == '\0') {\n      local_1dc = local_12c;\n      local_1d0 = (undefined ***)&local_134;\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0);\n      local_1a4 = local_19c;\n                    \n      FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_18c = 1;\n      if (local_1a0 == 0) {\n                    \n        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      local_1d8 = param_1 + 0x2184;\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_1a4);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_1a4 != local_19c) {\n        FUN_001e6db0(local_1a4);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0);\n      local_188 = local_180;\n                    \n      FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_170 = 1;\n      if (local_184 == 0) {\n                    \n        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_188);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_188 != local_180) {\n        FUN_001e6db0(local_188);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0);\n      local_16c = local_164;\n                    \n      FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_154 = 1;\n      if (local_168 == 0) {\n                    \n        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_16c);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_16c != local_164) {\n        FUN_001e6db0(local_16c);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0);\n      local_1e0 = local_148;\n      local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n      local_150 = local_1e0;\n                    \n      FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_138 = 1;\n      if (local_14c == 0) {\n                    \n        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_150 != local_1e0) {\n        FUN_001e6db0(local_150);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      goto LAB_000e7f08;\n    }\n  }\n  else {\n    pcVar12 = *(char **)(param_1 + 0x4cac);\n    sVar9 = strlen(pcVar12);\n    ppuVar3 = local_1d4;\n                    \n    FUN_001ef9f0(local_1d4,0,0,pcVar12,sVar9);\n    iVar14 = FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6);\n    if (iVar14 == 0) {\n      uVar6 = local_1b8;\n      if (2 < local_1b8) {\n        uVar6 = 2;\n      }\n                    \n      FUN_001eebf0(local_1d4,0,uVar6);\n    }\nLAB_000e7f08:\n    uVar6 = 0;\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n    if (local_1b8 != 0) {\n      do {\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    \n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      } while( true );\n    }\n  }\n  ppuVar4 = local_1c4;\n  puVar17 = auStack_20c;\n  puVar18 = auStack_20c;\n  if (*(int *)(param_1 + 0x3288) != 0) {\n    local_1e8 = local_a4;\n    local_1d0 = (undefined ***)&local_134;\n    FUN_0022bca0(local_1e8);\n    local_1fc = ppuVar4 + -0xa14;\n    local_34 = 0;\n    local_2c = 0;\n    local_a4[0] = ppuVar4 + -0xa12;\n    local_30 = 0;\n    local_28 = 0;\n    local_1f4 = (undefined ***)ppuVar4[-0x9d9];\n    local_1f8 = ppuVar4[-0x9d8];\n    local_24 = 0;\n    local_20 = 0;\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n                    \n    FUN_00211450((int)local_1f4[-3] + (int)&local_134,0);\n    local_200 = ppuVar4 + -0x9d6;\n    local_134 = (undefined ***)(ppuVar4 + -0x9d3);\n    local_a4[0] = ppuVar4 + -0x9ce;\n    local_1dc = local_12c;\n                    \n    FUN_00213670(local_12c);\n                    \n    FUN_00211450(local_1e8,local_12c);\n                    \n    iVar14 = FUN_00217950(local_12c,*(undefined4 *)(param_1 + 0x3288),8);\n    puVar15 = (undefined *)((int)local_1d0 + (int)local_134[-3]);\n    if (iVar14 == 0) {\n                    \n      FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4);\n    }\n    else {\n      FUN_00210c00(puVar15,0);\n    }\n    ppuVar4 = local_1c4;\n    if ((local_90 & 5) != 0) {\n      piVar7 = __errno_location();\n      pcVar12 = strerror(*piVar7);\n      uVar11 = *(undefined4 *)(param_1 + 0x3288);\n      uVar13 = gettext(local_1c4 + -0x3f6cb);\n                    \n                    \n      FUN_00065450(uVar13,uVar11,pcVar12);\n    }\n    local_1e0 = local_148;\n    local_148[0] = 0;\n    local_14c = 0;\n    piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n    local_150 = local_1e0;\n    if (piVar7 == (int *)0x0) {\n                    \n                    \n      FUN_0022c630();\n    }\n    if ((char)piVar7[7] == '\0') {\n                    \n      FUN_0022ccc0(piVar7);\n      iVar14 = 10;\n      if (*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0) {\n        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);\n        iVar14 = (int)cVar5;\n      }\n    }\n    else {\n      iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n    }\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n                    \n    FUN_001e7cb0(local_1d0,&local_150,iVar14);\n    local_1d4 = (undefined1 **)(param_1 + 0x5a3c);\n    local_1e4 = local_1c0;\n    while ((local_90 & 5) == 0) {\n      if ((local_14c != 0) && (local_150[local_14c + -1] == '\r')) {\n        *(undefined4 *)(puVar17 + -8) = 0;\n        *(int *)(puVar17 + -0xc) = local_14c + -1;\n        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;\n        FUN_001ef780();\n      }\n      *(undefined4 *)(puVar17 + -8) = 0xc70f6907;\n      *(int *)(puVar17 + -0xc) = local_14c;\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe793a;\n      uVar6 = FUN_001e52b0();\n      local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40);\n      *(uint *)(puVar17 + -0x14) = uVar6;\n      *(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_;\n      *(uint *)(puVar17 + -0x1c) = local_1d8;\n      *(undefined1 ***)(puVar17 + -0x20) = local_1d4;\n      *(undefined4 *)(puVar17 + -0x24) = 0xe7960;\n      piVar7 = (int *)FUN_000eadf0();\n      if ((piVar7 == (int *)0x0) || (*piVar7 == 0)) {\n        *(undefined4 *)(puVar17 + -0x10) = 0x20;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;\n        puVar8 = (undefined4 *)FUN_001e5200();\n        *puVar8 = 0;\n        puVar8[1] = puVar8 + 3;\n        *(undefined4 *)(puVar17 + -4) = 0;\n        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;\n        *(undefined1 **)(puVar17 + -0xc) = local_150;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;\n        FUN_000513a0();\n        *(undefined4 *)(puVar17 + -0xc) = 1;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8;\n        *(uint *)(puVar17 + -0x14) = uVar6;\n        *(uint *)(puVar17 + -0x18) = local_1d8;\n        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;\n        *(undefined1 **)(puVar17 + -0x20) = local_1e4;\n                    \n        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;\n        FUN_000ec3b0();\n        puVar17 = puVar17 + -4;\n      }\n      ppuVar4 = local_1c4;\n      piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n      if (piVar7 == (int *)0x0) {\n                    \n                    \n        *(undefined4 *)(puVar17 + -4) = 0xe88af;\n        FUN_0022c630();\n      }\n      if ((char)piVar7[7] == '\0') {\n        *(int **)(puVar17 + -0x10) = piVar7;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;\n        FUN_0022ccc0();\n        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);\n        iVar14 = 10;\n        if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }\n      }\n      else {\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }\n      *(int *)(puVar17 + -8) = iVar14;\n      *(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_;\n      *(undefined ****)(puVar17 + -0x10) = local_1d0;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe78f7;\n      FUN_001e7cb0();\n    }\n    if (local_150 != local_1e0) {\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe7aef;\n      FUN_001e6db0();\n    }\n    ppuVar4 = local_1c4;\n    *(undefined ****)(puVar17 + -0x10) = local_1dc;\n    local_134 = (undefined ***)(local_200 + 3);\n    local_a4[0] = local_200 + 8;\n    local_12c[0] = local_1c4 + -0x9f2;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b2f;\n    FUN_00216e90();\n    *(undefined1 **)(puVar17 + -0x10) = local_f4;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b3d;\n    FUN_001e75f0();\n    local_12c[0] = ppuVar4 + -0xbd7;\n    *(undefined1 **)(puVar17 + -0x10) = local_110;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b5a;\n    FUN_001e9510();\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n    local_a4[0] = local_1fc + 2;\n    *(undefined ****)(puVar17 + -0x10) = local_1e8;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b9b;\n    FUN_0022c040();\n    puVar18 = puVar17;\n  }\n  if ((*(char *)(param_1 + 0x72d) != '\0') && (*(char *)(param_1 + 0x42e0) == '\0')) {\n    *(int *)(param_1 + 0x42e4) = (int)local_1c4 + -0x10e8db;\n  }\n  if ((*(char *)(param_1 + 0x1a25) != '\0') && (*(char *)(param_1 + 0x1fc) == '\0')) {\n    *(undefined1 *)(param_1 + 0x1fd) = 1;\n  }\n  *(int *)(puVar18 + -0x10) = param_1;\n                    \n  *(undefined4 *)(puVar18 + -0x14) = 0xe7bef;\n  FUN_000ddde0();\n  if (*(char *)(param_1 + 0x1a25) == '\0') {\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      if (*(char *)(param_1 + 0x5938) != '\0') {\n        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;\n        FUN_00065450();\n      }\n      if (*(char *)(param_1 + 0x318d) != '\0') {\n        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;\n        FUN_00065450();\n      }\n    }\n    if (*(int *)(param_1 + 0x1478) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe898c;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8994;\n      FUN_00065450();\n    }\n    if (*(int *)(param_1 + 0x1428) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c0;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c8;\n      FUN_00065450();\n    }\n    if ((*(char *)(param_1 + 0x318d) != '\0') && (*(int *)(param_1 + 0x3288) != 0)) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe7e13;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b;\n      FUN_00065450();\n    }\n  }\n  else {\n    if (*(char *)(param_1 + 0x5938) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8aea;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe892f;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8937;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x318d) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe894e;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8956;\n      FUN_00065450();\n    }\n  }\n  *(undefined4 *)(puVar18 + -0x10) = *(undefined4 *)(param_1 + 0x27ec);\n  *(undefined4 *)(puVar18 + -0x14) = 0xe7c40;\n  iVar14 = FUN_000dd760();\n  if ((iVar14 != 0) &&\n     (((*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||\n      (*(char *)(param_1 + 0x318d) != '\0')))) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f678;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8910;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8918;\n    FUN_00065450();\n  }\n  if ((*(char *)(param_1 + 0x1ae4) != '\0') &&\n     ((dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1)))) {\n    local_1cc = dVar1;\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f668;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe88cc;\n    uVar11 = gettext();\n    dVar1 = local_1cc;\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(double *)(puVar18 + -0xc) = dVar1;\n                    \n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe88de;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x5a1c) == '\0') {\n    if (*(int *)(param_1 + 0x5a10) == 0) goto LAB_000e7d53;\n  }\n  else if (*(int *)(param_1 + 0x5a10) == 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a66;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a6e;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x318d) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f63c;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a85;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a8d;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x3095) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f630;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aa4;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aac;\n    FUN_00065450();\n  }\n  if (*(int *)(param_1 + 0x593c) != 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f621;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8ac3;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8acb;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x56b9) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f614;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a28;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a30;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x2931) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f607;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a47;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a4f;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x18b1) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5fb;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe871f;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8727;\n    FUN_000654e0();\n    *(undefined1 *)(param_1 + 0x18b1) = 0;\n  }\n  bVar22 = *(int *)(param_1 + 0x5934) == 0;\n  bVar24 = !bVar22;\n  if (bVar24) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5ef;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86e7;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86ef;\n    FUN_000654e0();\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }\n  bVar24 = bVar24 && (undefined1 *)0xffffffef < puVar18 + -0x10;\n  bVar22 = bVar22 || puVar18 == (undefined1 *)0x0;\n  iVar14 = 5;\n  pbVar19 = *(byte **)(param_1 + 0x99c);\n  pbVar20 = local_1f0;\n  do {\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    bVar24 = *pbVar19 < *pbVar20;\n    bVar22 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n    pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n  } while (bVar22);\n  if ((!bVar24 && !bVar22) != bVar24) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5e5;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86af;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe86b7;\n    FUN_000654e0();\n    *(byte **)(param_1 + 0x99c) = local_1f0;\n  }\nLAB_000e7d53:\n  if (*(char *)(param_1 + 0x3344) != '\0') {\n    *(undefined1 *)(param_1 + 0x32c9) = 1;\n  }\n  if (local_1bc != local_1ec) {\n    *(undefined1 **)(puVar18 + -0x10) = local_1bc;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe7d83;\n    FUN_001e6db0();\n  }\n  return;\n}" primitive_type (function_declarator "FUN_000e74a0(int param_1)" identifier (parameter_list "(int param_1)" ( (parameter_declaration "int param_1" primitive_type identifier) ))) (compound_statement "{\n  double dVar1;\n  undefined **ppuVar2;\n  undefined1 **ppuVar3;\n  undefined **ppuVar4;\n  char cVar5;\n  uint uVar6;\n  int *piVar7;\n  undefined4 *puVar8;\n  size_t sVar9;\n  uint uVar10;\n  undefined4 uVar11;\n  char *pcVar12;\n  undefined4 uVar13;\n  int iVar14;\n  undefined *puVar15;\n  uint uVar16;\n  undefined1 *puVar17;\n  undefined1 *puVar18;\n  byte *pbVar19;\n  byte *pbVar20;\n  byte *pbVar21;\n  bool bVar22;\n  bool bVar23;\n  bool bVar24;\n  byte bVar25;\n  undefined4 uStackY_230;\n  undefined1 auStack_20c [12];\n  undefined **local_200;\n  undefined **local_1fc;\n  undefined *local_1f8;\n  undefined ***local_1f4;\n  byte *local_1f0;\n  undefined1 *local_1ec;\n  undefined ***local_1e8;\n  undefined1 *local_1e4;\n  undefined1 *local_1e0;\n  undefined ***local_1dc;\n  uint local_1d8;\n  undefined1 **local_1d4;\n  undefined ***local_1d0;\n  double local_1cc;\n  undefined **local_1c4;\n  undefined1 local_1c0 [4];\n  undefined1 *local_1bc;\n  uint local_1b8;\n  undefined1 local_1b4 [16];\n  undefined1 *local_1a4;\n  int local_1a0;\n  undefined1 local_19c [16];\n  undefined2 local_18c;\n  undefined1 *local_188;\n  int local_184;\n  undefined1 local_180 [16];\n  undefined2 local_170;\n  undefined1 *local_16c;\n  int local_168;\n  undefined1 local_164 [16];\n  undefined2 local_154;\n  undefined1 *local_150;\n  int local_14c;\n  undefined1 local_148 [16];\n  undefined2 local_138;\n  undefined ***local_134;\n  int local_130;\n  undefined **local_12c [4];\n  undefined2 local_11c;\n  undefined1 local_110 [28];\n  undefined1 local_f4 [60];\n  int aiStack_b8 [5];\n  undefined **local_a4 [5];\n  byte local_90;\n  undefined4 local_34;\n  undefined2 local_30;\n  undefined4 local_2c;\n  undefined4 local_28;\n  undefined4 local_24;\n  undefined4 local_20;\n  \n  bVar25 = 0;\n  local_1c4 = &__DT_PLTGOT;\n  if (*(char *)(param_1 + 0x3469) == '\0') {\n    if (*(char *)(param_1 + 0x34e5) != '\0') goto LAB_000e79ea;\n    if (*(char *)(param_1 + 0x3561) != '\0') {\n      bVar24 = false;\n      goto LAB_000e79f9;\n    }\n    bVar24 = false;\n    if (*(char *)(param_1 + 0x7a9) != '\0') goto LAB_000e7a0c;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x34e5) = 1;\nLAB_000e79ea:\n    bVar24 = true;\n    *(undefined1 *)(param_1 + 0x3561) = 1;\nLAB_000e79f9:\n    *(undefined1 *)(param_1 + 0x35dd) = 1;\n    if (*(char *)(param_1 + 0x7a9) != '\0') {\nLAB_000e7a0c:\n      *(undefined1 *)(param_1 + 0x1a25) = 1;\n    }\n    if (((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&\n       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)) {\n      local_1c4 = &__DT_PLTGOT;\n                    \n      FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);\n    }\n  }\n  if (*(char *)(param_1 + 0xbcd) != '\0') {\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }\n  if (*(char *)(param_1 + 0xc49) != '\0') {\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }\n  if (*(char *)(param_1 + 0xb50) == '\0') {\n    local_1cc = (double)CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d));\n    *(byte *)(param_1 + 0xb51) = *(byte *)(param_1 + 0x318d) ^ 1;\n  }\n  bVar24 = *(char *)(param_1 + 0x4f31) == '\0';\n  if (bVar24) {\n    bVar24 = *(char *)(param_1 + 0x5545) == '\0';\n    if (!bVar24) {\n      *(undefined4 *)(param_1 + 0x5930) = 2;\n    }\n  }\n  else {\n    *(undefined4 *)(param_1 + 0x5930) = 1;\n  }\n  bVar22 = false;\n  iVar14 = 5;\n  local_1f0 = (byte *)0x28e9b2;\n  pbVar19 = *(byte **)(param_1 + 0x1bec);\n  pbVar20 = local_1f0;\n  do {\n    pbVar21 = pbVar20;\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    pbVar21 = pbVar20 + 1;\n    bVar22 = *pbVar19 < *pbVar20;\n    bVar24 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + 1;\n    pbVar20 = pbVar21;\n  } while (bVar24);\n  bVar23 = false;\n  bVar24 = (!bVar22 && !bVar24) == bVar22;\n  if (bVar24) {\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }\n  else {\n    iVar14 = 5;\n    pbVar19 = *(byte **)(param_1 + 0x1bec);\n    pbVar20 = (byte *)0x28e304;\n    do {\n      pbVar21 = pbVar20;\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      pbVar21 = pbVar20 + 1;\n      bVar23 = *pbVar19 < *pbVar20;\n      bVar24 = *pbVar19 == *pbVar20;\n      pbVar19 = pbVar19 + 1;\n      pbVar20 = pbVar21;\n    } while (bVar24);\n    *(uint *)(param_1 + 0x5934) = ((!bVar23 && !bVar24) == bVar23) + 1;\n  }\n  if (*(char *)(param_1 + 0xd4c) == '\0') {\n    if (*(char *)(param_1 + 0xd90) == '\0') {\n      local_1c4 = &__DT_PLTGOT;\n      pcVar12 = getenv("COLLECT_NO_DEMANGLE");\n      *(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0;\n    }\n    else {\n      *(undefined1 *)(param_1 + 0x5939) = 0;\n    }\n  }\n  else {\n    pcVar12 = *(char **)(param_1 + 0xd50);\n    *(undefined1 *)(param_1 + 0x5939) = 1;\n    local_1c4 = &__DT_PLTGOT;\n    if (*pcVar12 != '\0') {\n      iVar14 = FUN_001ce8a0(pcVar12);\n      if (iVar14 == 0) {\n                    \n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }\n      FUN_001ce850(iVar14);\n    }\n  }\n  ppuVar4 = local_1c4;\n  bVar24 = false;\n  bVar22 = *(char *)(param_1 + 0x2870) == '\0';\n  if (!bVar22) {\n    pbVar19 = *(byte **)(param_1 + 0x2874);\n    iVar14 = 6;\n    pbVar20 = pbVar19;\n    pbVar21 = (byte *)((int)local_1c4 + -0xeb29e);\n    do {\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar22 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n      pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n    } while (bVar22);\n    bVar23 = false;\n    bVar24 = (!bVar24 && !bVar22) == bVar24;\n    if (bVar24) {\n      *(undefined4 *)(param_1 + 0x5a88) = 0;\n    }\n    else {\n      iVar14 = 8;\n      pbVar20 = pbVar19;\n      pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar24 = (!bVar23 && !bVar24) == bVar23;\n      if (bVar24) {\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }\n      else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }\n    }\n  }\n  if ((*(char *)(param_1 + 0x2401) != '\0') && (*(char *)(param_1 + 0x247c) == '\0')) {\n    *(undefined1 *)(param_1 + 0x247c) = 1;\n    *(undefined ***)(param_1 + 0x2480) = local_1c4 + -0x4062a;\n  }\n  if ((*(char *)(param_1 + 0x24c1) != '\0') || (*(char *)(param_1 + 0x253d) != '\0')) {\n    *(undefined1 *)(param_1 + 0x5938) = 1;\n  }\n  iVar14 = *(int *)(param_1 + 0x3de8);\n  if (0 < iVar14) {\n    if (*(int *)(param_1 + 0x3e2c) == 0) {\n      *(int *)(param_1 + 0x3e2c) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3e70) == 0) {\n      *(int *)(param_1 + 0x3e70) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3eb4) == 0) {\n      *(int *)(param_1 + 0x3eb4) = iVar14;\n    }\n  }\n  local_1d4 = &local_1bc;\n  local_1b4[0] = 0;\n  local_1ec = local_1b4;\n  local_1b8 = 0;\n  local_1bc = local_1ec;\n  if (*(char *)(param_1 + 0x4ca8) == '\0') {\n    if (*(char *)(param_1 + 0x2729) == '\0') {\n      local_1dc = local_12c;\n      local_1d0 = (undefined ***)&local_134;\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0);\n      local_1a4 = local_19c;\n                    \n      FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_18c = 1;\n      if (local_1a0 == 0) {\n                    \n        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      local_1d8 = param_1 + 0x2184;\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_1a4);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_1a4 != local_19c) {\n        FUN_001e6db0(local_1a4);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0);\n      local_188 = local_180;\n                    \n      FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_170 = 1;\n      if (local_184 == 0) {\n                    \n        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_188);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_188 != local_180) {\n        FUN_001e6db0(local_188);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0);\n      local_16c = local_164;\n                    \n      FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_154 = 1;\n      if (local_168 == 0) {\n                    \n        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_16c);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_16c != local_164) {\n        FUN_001e6db0(local_16c);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0);\n      local_1e0 = local_148;\n      local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n      local_150 = local_1e0;\n                    \n      FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_138 = 1;\n      if (local_14c == 0) {\n                    \n        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_150 != local_1e0) {\n        FUN_001e6db0(local_150);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      goto LAB_000e7f08;\n    }\n  }\n  else {\n    pcVar12 = *(char **)(param_1 + 0x4cac);\n    sVar9 = strlen(pcVar12);\n    ppuVar3 = local_1d4;\n                    \n    FUN_001ef9f0(local_1d4,0,0,pcVar12,sVar9);\n    iVar14 = FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6);\n    if (iVar14 == 0) {\n      uVar6 = local_1b8;\n      if (2 < local_1b8) {\n        uVar6 = 2;\n      }\n                    \n      FUN_001eebf0(local_1d4,0,uVar6);\n    }\nLAB_000e7f08:\n    uVar6 = 0;\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n    if (local_1b8 != 0) {\n      do {\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    \n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      } while( true );\n    }\n  }\n  ppuVar4 = local_1c4;\n  puVar17 = auStack_20c;\n  puVar18 = auStack_20c;\n  if (*(int *)(param_1 + 0x3288) != 0) {\n    local_1e8 = local_a4;\n    local_1d0 = (undefined ***)&local_134;\n    FUN_0022bca0(local_1e8);\n    local_1fc = ppuVar4 + -0xa14;\n    local_34 = 0;\n    local_2c = 0;\n    local_a4[0] = ppuVar4 + -0xa12;\n    local_30 = 0;\n    local_28 = 0;\n    local_1f4 = (undefined ***)ppuVar4[-0x9d9];\n    local_1f8 = ppuVar4[-0x9d8];\n    local_24 = 0;\n    local_20 = 0;\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n                    \n    FUN_00211450((int)local_1f4[-3] + (int)&local_134,0);\n    local_200 = ppuVar4 + -0x9d6;\n    local_134 = (undefined ***)(ppuVar4 + -0x9d3);\n    local_a4[0] = ppuVar4 + -0x9ce;\n    local_1dc = local_12c;\n                    \n    FUN_00213670(local_12c);\n                    \n    FUN_00211450(local_1e8,local_12c);\n                    \n    iVar14 = FUN_00217950(local_12c,*(undefined4 *)(param_1 + 0x3288),8);\n    puVar15 = (undefined *)((int)local_1d0 + (int)local_134[-3]);\n    if (iVar14 == 0) {\n                    \n      FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4);\n    }\n    else {\n      FUN_00210c00(puVar15,0);\n    }\n    ppuVar4 = local_1c4;\n    if ((local_90 & 5) != 0) {\n      piVar7 = __errno_location();\n      pcVar12 = strerror(*piVar7);\n      uVar11 = *(undefined4 *)(param_1 + 0x3288);\n      uVar13 = gettext(local_1c4 + -0x3f6cb);\n                    \n                    \n      FUN_00065450(uVar13,uVar11,pcVar12);\n    }\n    local_1e0 = local_148;\n    local_148[0] = 0;\n    local_14c = 0;\n    piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n    local_150 = local_1e0;\n    if (piVar7 == (int *)0x0) {\n                    \n                    \n      FUN_0022c630();\n    }\n    if ((char)piVar7[7] == '\0') {\n                    \n      FUN_0022ccc0(piVar7);\n      iVar14 = 10;\n      if (*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0) {\n        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);\n        iVar14 = (int)cVar5;\n      }\n    }\n    else {\n      iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n    }\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n                    \n    FUN_001e7cb0(local_1d0,&local_150,iVar14);\n    local_1d4 = (undefined1 **)(param_1 + 0x5a3c);\n    local_1e4 = local_1c0;\n    while ((local_90 & 5) == 0) {\n      if ((local_14c != 0) && (local_150[local_14c + -1] == '\r')) {\n        *(undefined4 *)(puVar17 + -8) = 0;\n        *(int *)(puVar17 + -0xc) = local_14c + -1;\n        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;\n        FUN_001ef780();\n      }\n      *(undefined4 *)(puVar17 + -8) = 0xc70f6907;\n      *(int *)(puVar17 + -0xc) = local_14c;\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe793a;\n      uVar6 = FUN_001e52b0();\n      local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40);\n      *(uint *)(puVar17 + -0x14) = uVar6;\n      *(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_;\n      *(uint *)(puVar17 + -0x1c) = local_1d8;\n      *(undefined1 ***)(puVar17 + -0x20) = local_1d4;\n      *(undefined4 *)(puVar17 + -0x24) = 0xe7960;\n      piVar7 = (int *)FUN_000eadf0();\n      if ((piVar7 == (int *)0x0) || (*piVar7 == 0)) {\n        *(undefined4 *)(puVar17 + -0x10) = 0x20;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;\n        puVar8 = (undefined4 *)FUN_001e5200();\n        *puVar8 = 0;\n        puVar8[1] = puVar8 + 3;\n        *(undefined4 *)(puVar17 + -4) = 0;\n        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;\n        *(undefined1 **)(puVar17 + -0xc) = local_150;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;\n        FUN_000513a0();\n        *(undefined4 *)(puVar17 + -0xc) = 1;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8;\n        *(uint *)(puVar17 + -0x14) = uVar6;\n        *(uint *)(puVar17 + -0x18) = local_1d8;\n        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;\n        *(undefined1 **)(puVar17 + -0x20) = local_1e4;\n                    \n        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;\n        FUN_000ec3b0();\n        puVar17 = puVar17 + -4;\n      }\n      ppuVar4 = local_1c4;\n      piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n      if (piVar7 == (int *)0x0) {\n                    \n                    \n        *(undefined4 *)(puVar17 + -4) = 0xe88af;\n        FUN_0022c630();\n      }\n      if ((char)piVar7[7] == '\0') {\n        *(int **)(puVar17 + -0x10) = piVar7;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;\n        FUN_0022ccc0();\n        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);\n        iVar14 = 10;\n        if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }\n      }\n      else {\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }\n      *(int *)(puVar17 + -8) = iVar14;\n      *(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_;\n      *(undefined ****)(puVar17 + -0x10) = local_1d0;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe78f7;\n      FUN_001e7cb0();\n    }\n    if (local_150 != local_1e0) {\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe7aef;\n      FUN_001e6db0();\n    }\n    ppuVar4 = local_1c4;\n    *(undefined ****)(puVar17 + -0x10) = local_1dc;\n    local_134 = (undefined ***)(local_200 + 3);\n    local_a4[0] = local_200 + 8;\n    local_12c[0] = local_1c4 + -0x9f2;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b2f;\n    FUN_00216e90();\n    *(undefined1 **)(puVar17 + -0x10) = local_f4;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b3d;\n    FUN_001e75f0();\n    local_12c[0] = ppuVar4 + -0xbd7;\n    *(undefined1 **)(puVar17 + -0x10) = local_110;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b5a;\n    FUN_001e9510();\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n    local_a4[0] = local_1fc + 2;\n    *(undefined ****)(puVar17 + -0x10) = local_1e8;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b9b;\n    FUN_0022c040();\n    puVar18 = puVar17;\n  }\n  if ((*(char *)(param_1 + 0x72d) != '\0') && (*(char *)(param_1 + 0x42e0) == '\0')) {\n    *(int *)(param_1 + 0x42e4) = (int)local_1c4 + -0x10e8db;\n  }\n  if ((*(char *)(param_1 + 0x1a25) != '\0') && (*(char *)(param_1 + 0x1fc) == '\0')) {\n    *(undefined1 *)(param_1 + 0x1fd) = 1;\n  }\n  *(int *)(puVar18 + -0x10) = param_1;\n                    \n  *(undefined4 *)(puVar18 + -0x14) = 0xe7bef;\n  FUN_000ddde0();\n  if (*(char *)(param_1 + 0x1a25) == '\0') {\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      if (*(char *)(param_1 + 0x5938) != '\0') {\n        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;\n        FUN_00065450();\n      }\n      if (*(char *)(param_1 + 0x318d) != '\0') {\n        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;\n        FUN_00065450();\n      }\n    }\n    if (*(int *)(param_1 + 0x1478) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe898c;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8994;\n      FUN_00065450();\n    }\n    if (*(int *)(param_1 + 0x1428) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c0;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c8;\n      FUN_00065450();\n    }\n    if ((*(char *)(param_1 + 0x318d) != '\0') && (*(int *)(param_1 + 0x3288) != 0)) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe7e13;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b;\n      FUN_00065450();\n    }\n  }\n  else {\n    if (*(char *)(param_1 + 0x5938) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8aea;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe892f;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8937;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x318d) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe894e;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8956;\n      FUN_00065450();\n    }\n  }\n  *(undefined4 *)(puVar18 + -0x10) = *(undefined4 *)(param_1 + 0x27ec);\n  *(undefined4 *)(puVar18 + -0x14) = 0xe7c40;\n  iVar14 = FUN_000dd760();\n  if ((iVar14 != 0) &&\n     (((*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||\n      (*(char *)(param_1 + 0x318d) != '\0')))) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f678;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8910;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8918;\n    FUN_00065450();\n  }\n  if ((*(char *)(param_1 + 0x1ae4) != '\0') &&\n     ((dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1)))) {\n    local_1cc = dVar1;\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f668;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe88cc;\n    uVar11 = gettext();\n    dVar1 = local_1cc;\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(double *)(puVar18 + -0xc) = dVar1;\n                    \n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe88de;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x5a1c) == '\0') {\n    if (*(int *)(param_1 + 0x5a10) == 0) goto LAB_000e7d53;\n  }\n  else if (*(int *)(param_1 + 0x5a10) == 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a66;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a6e;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x318d) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f63c;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a85;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a8d;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x3095) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f630;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aa4;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aac;\n    FUN_00065450();\n  }\n  if (*(int *)(param_1 + 0x593c) != 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f621;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8ac3;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8acb;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x56b9) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f614;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a28;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a30;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x2931) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f607;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a47;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a4f;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x18b1) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5fb;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe871f;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8727;\n    FUN_000654e0();\n    *(undefined1 *)(param_1 + 0x18b1) = 0;\n  }\n  bVar22 = *(int *)(param_1 + 0x5934) == 0;\n  bVar24 = !bVar22;\n  if (bVar24) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5ef;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86e7;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86ef;\n    FUN_000654e0();\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }\n  bVar24 = bVar24 && (undefined1 *)0xffffffef < puVar18 + -0x10;\n  bVar22 = bVar22 || puVar18 == (undefined1 *)0x0;\n  iVar14 = 5;\n  pbVar19 = *(byte **)(param_1 + 0x99c);\n  pbVar20 = local_1f0;\n  do {\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    bVar24 = *pbVar19 < *pbVar20;\n    bVar22 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n    pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n  } while (bVar22);\n  if ((!bVar24 && !bVar22) != bVar24) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5e5;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86af;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe86b7;\n    FUN_000654e0();\n    *(byte **)(param_1 + 0x99c) = local_1f0;\n  }\nLAB_000e7d53:\n  if (*(char *)(param_1 + 0x3344) != '\0') {\n    *(undefined1 *)(param_1 + 0x32c9) = 1;\n  }\n  if (local_1bc != local_1ec) {\n    *(undefined1 **)(puVar18 + -0x10) = local_1bc;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe7d83;\n    FUN_001e6db0();\n  }\n  return;\n}" { (declaration "double dVar1;" primitive_type identifier ;) (declaration "undefined **ppuVar2;" type_identifier (pointer_declarator "**ppuVar2" * (pointer_declarator "*ppuVar2" * identifier)) ;) (declaration "undefined1 **ppuVar3;" type_identifier (pointer_declarator "**ppuVar3" * (pointer_declarator "*ppuVar3" * identifier)) ;) (declaration "undefined **ppuVar4;" type_identifier (pointer_declarator "**ppuVar4" * (pointer_declarator "*ppuVar4" * identifier)) ;) (declaration "char cVar5;" primitive_type identifier ;) (declaration "uint uVar6;" type_identifier identifier ;) (declaration "int *piVar7;" primitive_type (pointer_declarator "*piVar7" * identifier) ;) (declaration "undefined4 *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "size_t sVar9;" primitive_type identifier ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "undefined4 uVar11;" type_identifier identifier ;) (declaration "char *pcVar12;" primitive_type (pointer_declarator "*pcVar12" * identifier) ;) (declaration "undefined4 uVar13;" type_identifier identifier ;) (declaration "int iVar14;" primitive_type identifier ;) (declaration "undefined *puVar15;" type_identifier (pointer_declarator "*puVar15" * identifier) ;) (declaration "uint uVar16;" type_identifier identifier ;) (declaration "undefined1 *puVar17;" type_identifier (pointer_declarator "*puVar17" * identifier) ;) (declaration "undefined1 *puVar18;" type_identifier (pointer_declarator "*puVar18" * identifier) ;) (declaration "byte *pbVar19;" type_identifier (pointer_declarator "*pbVar19" * identifier) ;) (declaration "byte *pbVar20;" type_identifier (pointer_declarator "*pbVar20" * identifier) ;) (declaration "byte *pbVar21;" type_identifier (pointer_declarator "*pbVar21" * identifier) ;) (declaration "bool bVar22;" primitive_type identifier ;) (declaration "bool bVar23;" primitive_type identifier ;) (declaration "bool bVar24;" primitive_type identifier ;) (declaration "byte bVar25;" type_identifier identifier ;) (declaration "undefined4 uStackY_230;" type_identifier identifier ;) (declaration "undefined1 auStack_20c [12];" type_identifier (array_declarator "auStack_20c [12]" identifier [ number_literal ]) ;) (declaration "undefined **local_200;" type_identifier (pointer_declarator "**local_200" * (pointer_declarator "*local_200" * identifier)) ;) (declaration "undefined **local_1fc;" type_identifier (pointer_declarator "**local_1fc" * (pointer_declarator "*local_1fc" * identifier)) ;) (declaration "undefined *local_1f8;" type_identifier (pointer_declarator "*local_1f8" * identifier) ;) (declaration "undefined ***local_1f4;" type_identifier (pointer_declarator "***local_1f4" * (pointer_declarator "**local_1f4" * (pointer_declarator "*local_1f4" * identifier))) ;) (declaration "byte *local_1f0;" type_identifier (pointer_declarator "*local_1f0" * identifier) ;) (declaration "undefined1 *local_1ec;" type_identifier (pointer_declarator "*local_1ec" * identifier) ;) (declaration "undefined ***local_1e8;" type_identifier (pointer_declarator "***local_1e8" * (pointer_declarator "**local_1e8" * (pointer_declarator "*local_1e8" * identifier))) ;) (declaration "undefined1 *local_1e4;" type_identifier (pointer_declarator "*local_1e4" * identifier) ;) (declaration "undefined1 *local_1e0;" type_identifier (pointer_declarator "*local_1e0" * identifier) ;) (declaration "undefined ***local_1dc;" type_identifier (pointer_declarator "***local_1dc" * (pointer_declarator "**local_1dc" * (pointer_declarator "*local_1dc" * identifier))) ;) (declaration "uint local_1d8;" type_identifier identifier ;) (declaration "undefined1 **local_1d4;" type_identifier (pointer_declarator "**local_1d4" * (pointer_declarator "*local_1d4" * identifier)) ;) (declaration "undefined ***local_1d0;" type_identifier (pointer_declarator "***local_1d0" * (pointer_declarator "**local_1d0" * (pointer_declarator "*local_1d0" * identifier))) ;) (declaration "double local_1cc;" primitive_type identifier ;) (declaration "undefined **local_1c4;" type_identifier (pointer_declarator "**local_1c4" * (pointer_declarator "*local_1c4" * identifier)) ;) (declaration "undefined1 local_1c0 [4];" type_identifier (array_declarator "local_1c0 [4]" identifier [ number_literal ]) ;) (declaration "undefined1 *local_1bc;" type_identifier (pointer_declarator "*local_1bc" * identifier) ;) (declaration "uint local_1b8;" type_identifier identifier ;) (declaration "undefined1 local_1b4 [16];" type_identifier (array_declarator "local_1b4 [16]" identifier [ number_literal ]) ;) (declaration "undefined1 *local_1a4;" type_identifier (pointer_declarator "*local_1a4" * identifier) ;) (declaration "int local_1a0;" primitive_type identifier ;) (declaration "undefined1 local_19c [16];" type_identifier (array_declarator "local_19c [16]" identifier [ number_literal ]) ;) (declaration "undefined2 local_18c;" type_identifier identifier ;) (declaration "undefined1 *local_188;" type_identifier (pointer_declarator "*local_188" * identifier) ;) (declaration "int local_184;" primitive_type identifier ;) (declaration "undefined1 local_180 [16];" type_identifier (array_declarator "local_180 [16]" identifier [ number_literal ]) ;) (declaration "undefined2 local_170;" type_identifier identifier ;) (declaration "undefined1 *local_16c;" type_identifier (pointer_declarator "*local_16c" * identifier) ;) (declaration "int local_168;" primitive_type identifier ;) (declaration "undefined1 local_164 [16];" type_identifier (array_declarator "local_164 [16]" identifier [ number_literal ]) ;) (declaration "undefined2 local_154;" type_identifier identifier ;) (declaration "undefined1 *local_150;" type_identifier (pointer_declarator "*local_150" * identifier) ;) (declaration "int local_14c;" primitive_type identifier ;) (declaration "undefined1 local_148 [16];" type_identifier (array_declarator "local_148 [16]" identifier [ number_literal ]) ;) (declaration "undefined2 local_138;" type_identifier identifier ;) (declaration "undefined ***local_134;" type_identifier (pointer_declarator "***local_134" * (pointer_declarator "**local_134" * (pointer_declarator "*local_134" * identifier))) ;) (declaration "int local_130;" primitive_type identifier ;) (declaration "undefined **local_12c [4];" type_identifier (pointer_declarator "**local_12c [4]" * (pointer_declarator "*local_12c [4]" * (array_declarator "local_12c [4]" identifier [ number_literal ]))) ;) (declaration "undefined2 local_11c;" type_identifier identifier ;) (declaration "undefined1 local_110 [28];" type_identifier (array_declarator "local_110 [28]" identifier [ number_literal ]) ;) (declaration "undefined1 local_f4 [60];" type_identifier (array_declarator "local_f4 [60]" identifier [ number_literal ]) ;) (declaration "int aiStack_b8 [5];" primitive_type (array_declarator "aiStack_b8 [5]" identifier [ number_literal ]) ;) (declaration "undefined **local_a4 [5];" type_identifier (pointer_declarator "**local_a4 [5]" * (pointer_declarator "*local_a4 [5]" * (array_declarator "local_a4 [5]" identifier [ number_literal ]))) ;) (declaration "byte local_90;" type_identifier identifier ;) (declaration "undefined4 local_34;" type_identifier identifier ;) (declaration "undefined2 local_30;" type_identifier identifier ;) (declaration "undefined4 local_2c;" type_identifier identifier ;) (declaration "undefined4 local_28;" type_identifier identifier ;) (declaration "undefined4 local_24;" type_identifier identifier ;) (declaration "undefined4 local_20;" type_identifier identifier ;) (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" identifier = number_literal) ;) (expression_statement "local_1c4 = &__DT_PLTGOT;" (assignment_expression "local_1c4 = &__DT_PLTGOT" identifier = (pointer_expression "&__DT_PLTGOT" & identifier)) ;) (if_statement "if (*(char *)(param_1 + 0x3469) == '\0') {\n    if (*(char *)(param_1 + 0x34e5) != '\0') goto LAB_000e79ea;\n    if (*(char *)(param_1 + 0x3561) != '\0') {\n      bVar24 = false;\n      goto LAB_000e79f9;\n    }\n    bVar24 = false;\n    if (*(char *)(param_1 + 0x7a9) != '\0') goto LAB_000e7a0c;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x34e5) = 1;\nLAB_000e79ea:\n    bVar24 = true;\n    *(undefined1 *)(param_1 + 0x3561) = 1;\nLAB_000e79f9:\n    *(undefined1 *)(param_1 + 0x35dd) = 1;\n    if (*(char *)(param_1 + 0x7a9) != '\0') {\nLAB_000e7a0c:\n      *(undefined1 *)(param_1 + 0x1a25) = 1;\n    }\n    if (((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&\n       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)) {\n      local_1c4 = &__DT_PLTGOT;\n                    \n      FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);\n    }\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0x3469) == '\0')" ( (binary_expression "*(char *)(param_1 + 0x3469) == '\0'" (pointer_expression "*(char *)(param_1 + 0x3469)" * (cast_expression "(char *)(param_1 + 0x3469)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3469)" ( (binary_expression "param_1 + 0x3469" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (*(char *)(param_1 + 0x34e5) != '\0') goto LAB_000e79ea;\n    if (*(char *)(param_1 + 0x3561) != '\0') {\n      bVar24 = false;\n      goto LAB_000e79f9;\n    }\n    bVar24 = false;\n    if (*(char *)(param_1 + 0x7a9) != '\0') goto LAB_000e7a0c;\n  }" { (if_statement "if (*(char *)(param_1 + 0x34e5) != '\0') goto LAB_000e79ea;" if (parenthesized_expression "(*(char *)(param_1 + 0x34e5) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x34e5) != '\0'" (pointer_expression "*(char *)(param_1 + 0x34e5)" * (cast_expression "(char *)(param_1 + 0x34e5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x34e5)" ( (binary_expression "param_1 + 0x34e5" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000e79ea;" goto statement_identifier ;)) (if_statement "if (*(char *)(param_1 + 0x3561) != '\0') {\n      bVar24 = false;\n      goto LAB_000e79f9;\n    }" if (parenthesized_expression "(*(char *)(param_1 + 0x3561) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x3561) != '\0'" (pointer_expression "*(char *)(param_1 + 0x3561)" * (cast_expression "(char *)(param_1 + 0x3561)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3561)" ( (binary_expression "param_1 + 0x3561" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      bVar24 = false;\n      goto LAB_000e79f9;\n    }" { (expression_statement "bVar24 = false;" (assignment_expression "bVar24 = false" identifier = false) ;) (goto_statement "goto LAB_000e79f9;" goto statement_identifier ;) })) (expression_statement "bVar24 = false;" (assignment_expression "bVar24 = false" identifier = false) ;) (if_statement "if (*(char *)(param_1 + 0x7a9) != '\0') goto LAB_000e7a0c;" if (parenthesized_expression "(*(char *)(param_1 + 0x7a9) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x7a9) != '\0'" (pointer_expression "*(char *)(param_1 + 0x7a9)" * (cast_expression "(char *)(param_1 + 0x7a9)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x7a9)" ( (binary_expression "param_1 + 0x7a9" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000e7a0c;" goto statement_identifier ;)) }) (else_clause "else {\n    *(undefined1 *)(param_1 + 0x34e5) = 1;\nLAB_000e79ea:\n    bVar24 = true;\n    *(undefined1 *)(param_1 + 0x3561) = 1;\nLAB_000e79f9:\n    *(undefined1 *)(param_1 + 0x35dd) = 1;\n    if (*(char *)(param_1 + 0x7a9) != '\0') {\nLAB_000e7a0c:\n      *(undefined1 *)(param_1 + 0x1a25) = 1;\n    }\n    if (((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&\n       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)) {\n      local_1c4 = &__DT_PLTGOT;\n                    \n      FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);\n    }\n  }" else (compound_statement "{\n    *(undefined1 *)(param_1 + 0x34e5) = 1;\nLAB_000e79ea:\n    bVar24 = true;\n    *(undefined1 *)(param_1 + 0x3561) = 1;\nLAB_000e79f9:\n    *(undefined1 *)(param_1 + 0x35dd) = 1;\n    if (*(char *)(param_1 + 0x7a9) != '\0') {\nLAB_000e7a0c:\n      *(undefined1 *)(param_1 + 0x1a25) = 1;\n    }\n    if (((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&\n       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)) {\n      local_1c4 = &__DT_PLTGOT;\n                    \n      FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);\n    }\n  }" { (expression_statement "*(undefined1 *)(param_1 + 0x34e5) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x34e5) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x34e5)" * (cast_expression "(undefined1 *)(param_1 + 0x34e5)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x34e5)" ( (binary_expression "param_1 + 0x34e5" identifier + number_literal) )))) = number_literal) ;) (labeled_statement "LAB_000e79ea:\n    bVar24 = true;" statement_identifier : (expression_statement "bVar24 = true;" (assignment_expression "bVar24 = true" identifier = true) ;)) (expression_statement "*(undefined1 *)(param_1 + 0x3561) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x3561) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x3561)" * (cast_expression "(undefined1 *)(param_1 + 0x3561)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3561)" ( (binary_expression "param_1 + 0x3561" identifier + number_literal) )))) = number_literal) ;) (labeled_statement "LAB_000e79f9:\n    *(undefined1 *)(param_1 + 0x35dd) = 1;" statement_identifier : (expression_statement "*(undefined1 *)(param_1 + 0x35dd) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x35dd) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x35dd)" * (cast_expression "(undefined1 *)(param_1 + 0x35dd)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x35dd)" ( (binary_expression "param_1 + 0x35dd" identifier + number_literal) )))) = number_literal) ;)) (if_statement "if (*(char *)(param_1 + 0x7a9) != '\0') {\nLAB_000e7a0c:\n      *(undefined1 *)(param_1 + 0x1a25) = 1;\n    }" if (parenthesized_expression "(*(char *)(param_1 + 0x7a9) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x7a9) != '\0'" (pointer_expression "*(char *)(param_1 + 0x7a9)" * (cast_expression "(char *)(param_1 + 0x7a9)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x7a9)" ( (binary_expression "param_1 + 0x7a9" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_000e7a0c:\n      *(undefined1 *)(param_1 + 0x1a25) = 1;\n    }" { (labeled_statement "LAB_000e7a0c:\n      *(undefined1 *)(param_1 + 0x1a25) = 1;" statement_identifier : (expression_statement "*(undefined1 *)(param_1 + 0x1a25) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x1a25) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x1a25)" * (cast_expression "(undefined1 *)(param_1 + 0x1a25)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1a25)" ( (binary_expression "param_1 + 0x1a25" identifier + number_literal) )))) = number_literal) ;)) })) (if_statement "if (((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&\n       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)) {\n      local_1c4 = &__DT_PLTGOT;\n                    \n      FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);\n    }" if (parenthesized_expression "(((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&\n       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24))" ( (binary_expression "((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&\n       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)" (parenthesized_expression "((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0'))" ( (binary_expression "(*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')" (parenthesized_expression "(*(char *)(param_1 + 0x3469) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x3469) != '\0'" (pointer_expression "*(char *)(param_1 + 0x3469)" * (cast_expression "(char *)(param_1 + 0x3469)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3469)" ( (binary_expression "param_1 + 0x3469" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(*(char *)(param_1 + 0x318d) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x318d) != '\0'" (pointer_expression "*(char *)(param_1 + 0x318d)" * (cast_expression "(char *)(param_1 + 0x318d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x318d)" ( (binary_expression "param_1 + 0x318d" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) ))) )) && (parenthesized_expression "(*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)" ( (comma_expression "*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24" (assignment_expression "*(undefined1 *)(param_1 + 0x3469) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x3469)" * (cast_expression "(undefined1 *)(param_1 + 0x3469)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3469)" ( (binary_expression "param_1 + 0x3469" identifier + number_literal) )))) = number_literal) , (unary_expression "!bVar24" ! identifier)) ))) )) (compound_statement "{\n      local_1c4 = &__DT_PLTGOT;\n                    \n      FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);\n    }" { (expression_statement "local_1c4 = &__DT_PLTGOT;" (assignment_expression "local_1c4 = &__DT_PLTGOT" identifier = (pointer_expression "&__DT_PLTGOT" & identifier)) ;) (expression_statement "FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);" (call_expression "FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1)" identifier (argument_list "("../../gold/options.cc",0x453,"finalize",param_1)" ( (string_literal ""../../gold/options.cc"" " string_content ") , number_literal , (string_literal ""finalize"" " string_content ") , identifier ))) ;) })) }))) (if_statement "if (*(char *)(param_1 + 0xbcd) != '\0') {\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0xbcd) != '\0')" ( (binary_expression "*(char *)(param_1 + 0xbcd) != '\0'" (pointer_expression "*(char *)(param_1 + 0xbcd)" * (cast_expression "(char *)(param_1 + 0xbcd)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xbcd)" ( (binary_expression "param_1 + 0xbcd" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }" { (expression_statement "*(undefined1 *)(param_1 + 0xb51) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0xb51) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0xb51)" * (cast_expression "(undefined1 *)(param_1 + 0xb51)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xb51)" ( (binary_expression "param_1 + 0xb51" identifier + number_literal) )))) = number_literal) ;) })) (if_statement "if (*(char *)(param_1 + 0xc49) != '\0') {\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0xc49) != '\0')" ( (binary_expression "*(char *)(param_1 + 0xc49) != '\0'" (pointer_expression "*(char *)(param_1 + 0xc49)" * (cast_expression "(char *)(param_1 + 0xc49)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc49)" ( (binary_expression "param_1 + 0xc49" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }" { (expression_statement "*(undefined1 *)(param_1 + 0xb51) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0xb51) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0xb51)" * (cast_expression "(undefined1 *)(param_1 + 0xb51)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xb51)" ( (binary_expression "param_1 + 0xb51" identifier + number_literal) )))) = number_literal) ;) })) (if_statement "if (*(char *)(param_1 + 0xb50) == '\0') {\n    local_1cc = (double)CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d));\n    *(byte *)(param_1 + 0xb51) = *(byte *)(param_1 + 0x318d) ^ 1;\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0xb50) == '\0')" ( (binary_expression "*(char *)(param_1 + 0xb50) == '\0'" (pointer_expression "*(char *)(param_1 + 0xb50)" * (cast_expression "(char *)(param_1 + 0xb50)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xb50)" ( (binary_expression "param_1 + 0xb50" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    local_1cc = (double)CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d));\n    *(byte *)(param_1 + 0xb51) = *(byte *)(param_1 + 0x318d) ^ 1;\n  }" { (expression_statement "local_1cc = (double)CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d));" (assignment_expression "local_1cc = (double)CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d))" identifier = (cast_expression "(double)CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d))" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d))" identifier (argument_list "(local_1cc._1_7_,*(byte *)(param_1 + 0x318d))" ( (field_expression "local_1cc._1_7_" identifier . field_identifier) , (pointer_expression "*(byte *)(param_1 + 0x318d)" * (cast_expression "(byte *)(param_1 + 0x318d)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x318d)" ( (binary_expression "param_1 + 0x318d" identifier + number_literal) )))) ))))) ;) (expression_statement "*(byte *)(param_1 + 0xb51) = *(byte *)(param_1 + 0x318d) ^ 1;" (assignment_expression "*(byte *)(param_1 + 0xb51) = *(byte *)(param_1 + 0x318d) ^ 1" (pointer_expression "*(byte *)(param_1 + 0xb51)" * (cast_expression "(byte *)(param_1 + 0xb51)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xb51)" ( (binary_expression "param_1 + 0xb51" identifier + number_literal) )))) = (binary_expression "*(byte *)(param_1 + 0x318d) ^ 1" (pointer_expression "*(byte *)(param_1 + 0x318d)" * (cast_expression "(byte *)(param_1 + 0x318d)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x318d)" ( (binary_expression "param_1 + 0x318d" identifier + number_literal) )))) ^ number_literal)) ;) })) (expression_statement "bVar24 = *(char *)(param_1 + 0x4f31) == '\0';" (assignment_expression "bVar24 = *(char *)(param_1 + 0x4f31) == '\0'" identifier = (binary_expression "*(char *)(param_1 + 0x4f31) == '\0'" (pointer_expression "*(char *)(param_1 + 0x4f31)" * (cast_expression "(char *)(param_1 + 0x4f31)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x4f31)" ( (binary_expression "param_1 + 0x4f31" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence '))) ;) (if_statement "if (bVar24) {\n    bVar24 = *(char *)(param_1 + 0x5545) == '\0';\n    if (!bVar24) {\n      *(undefined4 *)(param_1 + 0x5930) = 2;\n    }\n  }\n  else {\n    *(undefined4 *)(param_1 + 0x5930) = 1;\n  }" if (parenthesized_expression "(bVar24)" ( identifier )) (compound_statement "{\n    bVar24 = *(char *)(param_1 + 0x5545) == '\0';\n    if (!bVar24) {\n      *(undefined4 *)(param_1 + 0x5930) = 2;\n    }\n  }" { (expression_statement "bVar24 = *(char *)(param_1 + 0x5545) == '\0';" (assignment_expression "bVar24 = *(char *)(param_1 + 0x5545) == '\0'" identifier = (binary_expression "*(char *)(param_1 + 0x5545) == '\0'" (pointer_expression "*(char *)(param_1 + 0x5545)" * (cast_expression "(char *)(param_1 + 0x5545)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5545)" ( (binary_expression "param_1 + 0x5545" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence '))) ;) (if_statement "if (!bVar24) {\n      *(undefined4 *)(param_1 + 0x5930) = 2;\n    }" if (parenthesized_expression "(!bVar24)" ( (unary_expression "!bVar24" ! identifier) )) (compound_statement "{\n      *(undefined4 *)(param_1 + 0x5930) = 2;\n    }" { (expression_statement "*(undefined4 *)(param_1 + 0x5930) = 2;" (assignment_expression "*(undefined4 *)(param_1 + 0x5930) = 2" (pointer_expression "*(undefined4 *)(param_1 + 0x5930)" * (cast_expression "(undefined4 *)(param_1 + 0x5930)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5930)" ( (binary_expression "param_1 + 0x5930" identifier + number_literal) )))) = number_literal) ;) })) }) (else_clause "else {\n    *(undefined4 *)(param_1 + 0x5930) = 1;\n  }" else (compound_statement "{\n    *(undefined4 *)(param_1 + 0x5930) = 1;\n  }" { (expression_statement "*(undefined4 *)(param_1 + 0x5930) = 1;" (assignment_expression "*(undefined4 *)(param_1 + 0x5930) = 1" (pointer_expression "*(undefined4 *)(param_1 + 0x5930)" * (cast_expression "(undefined4 *)(param_1 + 0x5930)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5930)" ( (binary_expression "param_1 + 0x5930" identifier + number_literal) )))) = number_literal) ;) }))) (expression_statement "bVar22 = false;" (assignment_expression "bVar22 = false" identifier = false) ;) (expression_statement "iVar14 = 5;" (assignment_expression "iVar14 = 5" identifier = number_literal) ;) (expression_statement "local_1f0 = (byte *)0x28e9b2;" (assignment_expression "local_1f0 = (byte *)0x28e9b2" identifier = (cast_expression "(byte *)0x28e9b2" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pbVar19 = *(byte **)(param_1 + 0x1bec);" (assignment_expression "pbVar19 = *(byte **)(param_1 + 0x1bec)" identifier = (pointer_expression "*(byte **)(param_1 + 0x1bec)" * (cast_expression "(byte **)(param_1 + 0x1bec)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x1bec)" ( (binary_expression "param_1 + 0x1bec" identifier + number_literal) ))))) ;) (expression_statement "pbVar20 = local_1f0;" (assignment_expression "pbVar20 = local_1f0" identifier = identifier) ;) (do_statement "do {\n    pbVar21 = pbVar20;\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    pbVar21 = pbVar20 + 1;\n    bVar22 = *pbVar19 < *pbVar20;\n    bVar24 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + 1;\n    pbVar20 = pbVar21;\n  } while (bVar24);" do (compound_statement "{\n    pbVar21 = pbVar20;\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    pbVar21 = pbVar20 + 1;\n    bVar22 = *pbVar19 < *pbVar20;\n    bVar24 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + 1;\n    pbVar20 = pbVar21;\n  }" { (expression_statement "pbVar21 = pbVar20;" (assignment_expression "pbVar21 = pbVar20" identifier = identifier) ;) (if_statement "if (iVar14 == 0) break;" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" identifier = (binary_expression "iVar14 + -1" identifier + number_literal)) ;) (expression_statement "pbVar21 = pbVar20 + 1;" (assignment_expression "pbVar21 = pbVar20 + 1" identifier = (binary_expression "pbVar20 + 1" identifier + number_literal)) ;) (expression_statement "bVar22 = *pbVar19 < *pbVar20;" (assignment_expression "bVar22 = *pbVar19 < *pbVar20" identifier = (binary_expression "*pbVar19 < *pbVar20" (pointer_expression "*pbVar19" * identifier) < (pointer_expression "*pbVar20" * identifier))) ;) (expression_statement "bVar24 = *pbVar19 == *pbVar20;" (assignment_expression "bVar24 = *pbVar19 == *pbVar20" identifier = (binary_expression "*pbVar19 == *pbVar20" (pointer_expression "*pbVar19" * identifier) == (pointer_expression "*pbVar20" * identifier))) ;) (expression_statement "pbVar19 = pbVar19 + 1;" (assignment_expression "pbVar19 = pbVar19 + 1" identifier = (binary_expression "pbVar19 + 1" identifier + number_literal)) ;) (expression_statement "pbVar20 = pbVar21;" (assignment_expression "pbVar20 = pbVar21" identifier = identifier) ;) }) while (parenthesized_expression "(bVar24)" ( identifier )) ;) (expression_statement "bVar23 = false;" (assignment_expression "bVar23 = false" identifier = false) ;) (expression_statement "bVar24 = (!bVar22 && !bVar24) == bVar22;" (assignment_expression "bVar24 = (!bVar22 && !bVar24) == bVar22" identifier = (binary_expression "(!bVar22 && !bVar24) == bVar22" (parenthesized_expression "(!bVar22 && !bVar24)" ( (binary_expression "!bVar22 && !bVar24" (unary_expression "!bVar22" ! identifier) && (unary_expression "!bVar24" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar24) {\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }\n  else {\n    iVar14 = 5;\n    pbVar19 = *(byte **)(param_1 + 0x1bec);\n    pbVar20 = (byte *)0x28e304;\n    do {\n      pbVar21 = pbVar20;\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      pbVar21 = pbVar20 + 1;\n      bVar23 = *pbVar19 < *pbVar20;\n      bVar24 = *pbVar19 == *pbVar20;\n      pbVar19 = pbVar19 + 1;\n      pbVar20 = pbVar21;\n    } while (bVar24);\n    *(uint *)(param_1 + 0x5934) = ((!bVar23 && !bVar24) == bVar23) + 1;\n  }" if (parenthesized_expression "(bVar24)" ( identifier )) (compound_statement "{\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }" { (expression_statement "*(undefined4 *)(param_1 + 0x5934) = 0;" (assignment_expression "*(undefined4 *)(param_1 + 0x5934) = 0" (pointer_expression "*(undefined4 *)(param_1 + 0x5934)" * (cast_expression "(undefined4 *)(param_1 + 0x5934)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5934)" ( (binary_expression "param_1 + 0x5934" identifier + number_literal) )))) = number_literal) ;) }) (else_clause "else {\n    iVar14 = 5;\n    pbVar19 = *(byte **)(param_1 + 0x1bec);\n    pbVar20 = (byte *)0x28e304;\n    do {\n      pbVar21 = pbVar20;\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      pbVar21 = pbVar20 + 1;\n      bVar23 = *pbVar19 < *pbVar20;\n      bVar24 = *pbVar19 == *pbVar20;\n      pbVar19 = pbVar19 + 1;\n      pbVar20 = pbVar21;\n    } while (bVar24);\n    *(uint *)(param_1 + 0x5934) = ((!bVar23 && !bVar24) == bVar23) + 1;\n  }" else (compound_statement "{\n    iVar14 = 5;\n    pbVar19 = *(byte **)(param_1 + 0x1bec);\n    pbVar20 = (byte *)0x28e304;\n    do {\n      pbVar21 = pbVar20;\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      pbVar21 = pbVar20 + 1;\n      bVar23 = *pbVar19 < *pbVar20;\n      bVar24 = *pbVar19 == *pbVar20;\n      pbVar19 = pbVar19 + 1;\n      pbVar20 = pbVar21;\n    } while (bVar24);\n    *(uint *)(param_1 + 0x5934) = ((!bVar23 && !bVar24) == bVar23) + 1;\n  }" { (expression_statement "iVar14 = 5;" (assignment_expression "iVar14 = 5" identifier = number_literal) ;) (expression_statement "pbVar19 = *(byte **)(param_1 + 0x1bec);" (assignment_expression "pbVar19 = *(byte **)(param_1 + 0x1bec)" identifier = (pointer_expression "*(byte **)(param_1 + 0x1bec)" * (cast_expression "(byte **)(param_1 + 0x1bec)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x1bec)" ( (binary_expression "param_1 + 0x1bec" identifier + number_literal) ))))) ;) (expression_statement "pbVar20 = (byte *)0x28e304;" (assignment_expression "pbVar20 = (byte *)0x28e304" identifier = (cast_expression "(byte *)0x28e304" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n      pbVar21 = pbVar20;\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      pbVar21 = pbVar20 + 1;\n      bVar23 = *pbVar19 < *pbVar20;\n      bVar24 = *pbVar19 == *pbVar20;\n      pbVar19 = pbVar19 + 1;\n      pbVar20 = pbVar21;\n    } while (bVar24);" do (compound_statement "{\n      pbVar21 = pbVar20;\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      pbVar21 = pbVar20 + 1;\n      bVar23 = *pbVar19 < *pbVar20;\n      bVar24 = *pbVar19 == *pbVar20;\n      pbVar19 = pbVar19 + 1;\n      pbVar20 = pbVar21;\n    }" { (expression_statement "pbVar21 = pbVar20;" (assignment_expression "pbVar21 = pbVar20" identifier = identifier) ;) (if_statement "if (iVar14 == 0) break;" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" identifier = (binary_expression "iVar14 + -1" identifier + number_literal)) ;) (expression_statement "pbVar21 = pbVar20 + 1;" (assignment_expression "pbVar21 = pbVar20 + 1" identifier = (binary_expression "pbVar20 + 1" identifier + number_literal)) ;) (expression_statement "bVar23 = *pbVar19 < *pbVar20;" (assignment_expression "bVar23 = *pbVar19 < *pbVar20" identifier = (binary_expression "*pbVar19 < *pbVar20" (pointer_expression "*pbVar19" * identifier) < (pointer_expression "*pbVar20" * identifier))) ;) (expression_statement "bVar24 = *pbVar19 == *pbVar20;" (assignment_expression "bVar24 = *pbVar19 == *pbVar20" identifier = (binary_expression "*pbVar19 == *pbVar20" (pointer_expression "*pbVar19" * identifier) == (pointer_expression "*pbVar20" * identifier))) ;) (expression_statement "pbVar19 = pbVar19 + 1;" (assignment_expression "pbVar19 = pbVar19 + 1" identifier = (binary_expression "pbVar19 + 1" identifier + number_literal)) ;) (expression_statement "pbVar20 = pbVar21;" (assignment_expression "pbVar20 = pbVar21" identifier = identifier) ;) }) while (parenthesized_expression "(bVar24)" ( identifier )) ;) (expression_statement "*(uint *)(param_1 + 0x5934) = ((!bVar23 && !bVar24) == bVar23) + 1;" (assignment_expression "*(uint *)(param_1 + 0x5934) = ((!bVar23 && !bVar24) == bVar23) + 1" (pointer_expression "*(uint *)(param_1 + 0x5934)" * (cast_expression "(uint *)(param_1 + 0x5934)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5934)" ( (binary_expression "param_1 + 0x5934" identifier + number_literal) )))) = (binary_expression "((!bVar23 && !bVar24) == bVar23) + 1" (parenthesized_expression "((!bVar23 && !bVar24) == bVar23)" ( (binary_expression "(!bVar23 && !bVar24) == bVar23" (parenthesized_expression "(!bVar23 && !bVar24)" ( (binary_expression "!bVar23 && !bVar24" (unary_expression "!bVar23" ! identifier) && (unary_expression "!bVar24" ! identifier)) )) == identifier) )) + number_literal)) ;) }))) (if_statement "if (*(char *)(param_1 + 0xd4c) == '\0') {\n    if (*(char *)(param_1 + 0xd90) == '\0') {\n      local_1c4 = &__DT_PLTGOT;\n      pcVar12 = getenv("COLLECT_NO_DEMANGLE");\n      *(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0;\n    }\n    else {\n      *(undefined1 *)(param_1 + 0x5939) = 0;\n    }\n  }\n  else {\n    pcVar12 = *(char **)(param_1 + 0xd50);\n    *(undefined1 *)(param_1 + 0x5939) = 1;\n    local_1c4 = &__DT_PLTGOT;\n    if (*pcVar12 != '\0') {\n      iVar14 = FUN_001ce8a0(pcVar12);\n      if (iVar14 == 0) {\n                    \n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }\n      FUN_001ce850(iVar14);\n    }\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0xd4c) == '\0')" ( (binary_expression "*(char *)(param_1 + 0xd4c) == '\0'" (pointer_expression "*(char *)(param_1 + 0xd4c)" * (cast_expression "(char *)(param_1 + 0xd4c)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xd4c)" ( (binary_expression "param_1 + 0xd4c" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (*(char *)(param_1 + 0xd90) == '\0') {\n      local_1c4 = &__DT_PLTGOT;\n      pcVar12 = getenv("COLLECT_NO_DEMANGLE");\n      *(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0;\n    }\n    else {\n      *(undefined1 *)(param_1 + 0x5939) = 0;\n    }\n  }" { (if_statement "if (*(char *)(param_1 + 0xd90) == '\0') {\n      local_1c4 = &__DT_PLTGOT;\n      pcVar12 = getenv("COLLECT_NO_DEMANGLE");\n      *(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0;\n    }\n    else {\n      *(undefined1 *)(param_1 + 0x5939) = 0;\n    }" if (parenthesized_expression "(*(char *)(param_1 + 0xd90) == '\0')" ( (binary_expression "*(char *)(param_1 + 0xd90) == '\0'" (pointer_expression "*(char *)(param_1 + 0xd90)" * (cast_expression "(char *)(param_1 + 0xd90)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xd90)" ( (binary_expression "param_1 + 0xd90" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      local_1c4 = &__DT_PLTGOT;\n      pcVar12 = getenv("COLLECT_NO_DEMANGLE");\n      *(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0;\n    }" { (expression_statement "local_1c4 = &__DT_PLTGOT;" (assignment_expression "local_1c4 = &__DT_PLTGOT" identifier = (pointer_expression "&__DT_PLTGOT" & identifier)) ;) (expression_statement "pcVar12 = getenv("COLLECT_NO_DEMANGLE");" (assignment_expression "pcVar12 = getenv("COLLECT_NO_DEMANGLE")" identifier = (call_expression "getenv("COLLECT_NO_DEMANGLE")" identifier (argument_list "("COLLECT_NO_DEMANGLE")" ( (string_literal ""COLLECT_NO_DEMANGLE"" " string_content ") )))) ;) (expression_statement "*(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0;" (assignment_expression "*(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0" (pointer_expression "*(bool *)(param_1 + 0x5939)" * (cast_expression "(bool *)(param_1 + 0x5939)" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5939)" ( (binary_expression "param_1 + 0x5939" identifier + number_literal) )))) = (binary_expression "pcVar12 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal))) ;) }) (else_clause "else {\n      *(undefined1 *)(param_1 + 0x5939) = 0;\n    }" else (compound_statement "{\n      *(undefined1 *)(param_1 + 0x5939) = 0;\n    }" { (expression_statement "*(undefined1 *)(param_1 + 0x5939) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x5939) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x5939)" * (cast_expression "(undefined1 *)(param_1 + 0x5939)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5939)" ( (binary_expression "param_1 + 0x5939" identifier + number_literal) )))) = number_literal) ;) }))) }) (else_clause "else {\n    pcVar12 = *(char **)(param_1 + 0xd50);\n    *(undefined1 *)(param_1 + 0x5939) = 1;\n    local_1c4 = &__DT_PLTGOT;\n    if (*pcVar12 != '\0') {\n      iVar14 = FUN_001ce8a0(pcVar12);\n      if (iVar14 == 0) {\n                    \n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }\n      FUN_001ce850(iVar14);\n    }\n  }" else (compound_statement "{\n    pcVar12 = *(char **)(param_1 + 0xd50);\n    *(undefined1 *)(param_1 + 0x5939) = 1;\n    local_1c4 = &__DT_PLTGOT;\n    if (*pcVar12 != '\0') {\n      iVar14 = FUN_001ce8a0(pcVar12);\n      if (iVar14 == 0) {\n                    \n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }\n      FUN_001ce850(iVar14);\n    }\n  }" { (expression_statement "pcVar12 = *(char **)(param_1 + 0xd50);" (assignment_expression "pcVar12 = *(char **)(param_1 + 0xd50)" identifier = (pointer_expression "*(char **)(param_1 + 0xd50)" * (cast_expression "(char **)(param_1 + 0xd50)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0xd50)" ( (binary_expression "param_1 + 0xd50" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 *)(param_1 + 0x5939) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x5939) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x5939)" * (cast_expression "(undefined1 *)(param_1 + 0x5939)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5939)" ( (binary_expression "param_1 + 0x5939" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_1c4 = &__DT_PLTGOT;" (assignment_expression "local_1c4 = &__DT_PLTGOT" identifier = (pointer_expression "&__DT_PLTGOT" & identifier)) ;) (if_statement "if (*pcVar12 != '\0') {\n      iVar14 = FUN_001ce8a0(pcVar12);\n      if (iVar14 == 0) {\n                    \n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }\n      FUN_001ce850(iVar14);\n    }" if (parenthesized_expression "(*pcVar12 != '\0')" ( (binary_expression "*pcVar12 != '\0'" (pointer_expression "*pcVar12" * identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      iVar14 = FUN_001ce8a0(pcVar12);\n      if (iVar14 == 0) {\n                    \n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }\n      FUN_001ce850(iVar14);\n    }" { (expression_statement "iVar14 = FUN_001ce8a0(pcVar12);" (assignment_expression "iVar14 = FUN_001ce8a0(pcVar12)" identifier = (call_expression "FUN_001ce8a0(pcVar12)" identifier (argument_list "(pcVar12)" ( identifier )))) ;) (if_statement "if (iVar14 == 0) {\n                    \n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (compound_statement "{\n                    \n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }" { (expression_statement "FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);" (call_expression "FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21)" identifier (argument_list "(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21)" ( (binary_expression "local_1c4 + -0x400fe" identifier + number_literal) , identifier , identifier , identifier ))) ;) })) (expression_statement "FUN_001ce850(iVar14);" (call_expression "FUN_001ce850(iVar14)" identifier (argument_list "(iVar14)" ( identifier ))) ;) })) }))) (expression_statement "ppuVar4 = local_1c4;" (assignment_expression "ppuVar4 = local_1c4" identifier = identifier) ;) (expression_statement "bVar24 = false;" (assignment_expression "bVar24 = false" identifier = false) ;) (expression_statement "bVar22 = *(char *)(param_1 + 0x2870) == '\0';" (assignment_expression "bVar22 = *(char *)(param_1 + 0x2870) == '\0'" identifier = (binary_expression "*(char *)(param_1 + 0x2870) == '\0'" (pointer_expression "*(char *)(param_1 + 0x2870)" * (cast_expression "(char *)(param_1 + 0x2870)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2870)" ( (binary_expression "param_1 + 0x2870" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence '))) ;) (if_statement "if (!bVar22) {\n    pbVar19 = *(byte **)(param_1 + 0x2874);\n    iVar14 = 6;\n    pbVar20 = pbVar19;\n    pbVar21 = (byte *)((int)local_1c4 + -0xeb29e);\n    do {\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar22 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n      pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n    } while (bVar22);\n    bVar23 = false;\n    bVar24 = (!bVar24 && !bVar22) == bVar24;\n    if (bVar24) {\n      *(undefined4 *)(param_1 + 0x5a88) = 0;\n    }\n    else {\n      iVar14 = 8;\n      pbVar20 = pbVar19;\n      pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar24 = (!bVar23 && !bVar24) == bVar23;\n      if (bVar24) {\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }\n      else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }\n    }\n  }" if (parenthesized_expression "(!bVar22)" ( (unary_expression "!bVar22" ! identifier) )) (compound_statement "{\n    pbVar19 = *(byte **)(param_1 + 0x2874);\n    iVar14 = 6;\n    pbVar20 = pbVar19;\n    pbVar21 = (byte *)((int)local_1c4 + -0xeb29e);\n    do {\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar22 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n      pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n    } while (bVar22);\n    bVar23 = false;\n    bVar24 = (!bVar24 && !bVar22) == bVar24;\n    if (bVar24) {\n      *(undefined4 *)(param_1 + 0x5a88) = 0;\n    }\n    else {\n      iVar14 = 8;\n      pbVar20 = pbVar19;\n      pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar24 = (!bVar23 && !bVar24) == bVar23;\n      if (bVar24) {\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }\n      else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }\n    }\n  }" { (expression_statement "pbVar19 = *(byte **)(param_1 + 0x2874);" (assignment_expression "pbVar19 = *(byte **)(param_1 + 0x2874)" identifier = (pointer_expression "*(byte **)(param_1 + 0x2874)" * (cast_expression "(byte **)(param_1 + 0x2874)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x2874)" ( (binary_expression "param_1 + 0x2874" identifier + number_literal) ))))) ;) (expression_statement "iVar14 = 6;" (assignment_expression "iVar14 = 6" identifier = number_literal) ;) (expression_statement "pbVar20 = pbVar19;" (assignment_expression "pbVar20 = pbVar19" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)((int)local_1c4 + -0xeb29e);" (assignment_expression "pbVar21 = (byte *)((int)local_1c4 + -0xeb29e)" identifier = (cast_expression "(byte *)((int)local_1c4 + -0xeb29e)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1c4 + -0xeb29e)" ( (binary_expression "(int)local_1c4 + -0xeb29e" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (do_statement "do {\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar22 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n      pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n    } while (bVar22);" do (compound_statement "{\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar22 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n      pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n    }" { (if_statement "if (iVar14 == 0) break;" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" identifier = (binary_expression "iVar14 + -1" identifier + number_literal)) ;) (expression_statement "bVar24 = *pbVar20 < *pbVar21;" (assignment_expression "bVar24 = *pbVar20 < *pbVar21" identifier = (binary_expression "*pbVar20 < *pbVar21" (pointer_expression "*pbVar20" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar22 = *pbVar20 == *pbVar21;" (assignment_expression "bVar22 = *pbVar20 == *pbVar21" identifier = (binary_expression "*pbVar20 == *pbVar21" (pointer_expression "*pbVar20" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1" identifier = (binary_expression "pbVar20 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar25 * -2" identifier + (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1" identifier = (binary_expression "pbVar21 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar21 + (uint)bVar25 * -2" identifier + (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar22)" ( identifier )) ;) (expression_statement "bVar23 = false;" (assignment_expression "bVar23 = false" identifier = false) ;) (expression_statement "bVar24 = (!bVar24 && !bVar22) == bVar24;" (assignment_expression "bVar24 = (!bVar24 && !bVar22) == bVar24" identifier = (binary_expression "(!bVar24 && !bVar22) == bVar24" (parenthesized_expression "(!bVar24 && !bVar22)" ( (binary_expression "!bVar24 && !bVar22" (unary_expression "!bVar24" ! identifier) && (unary_expression "!bVar22" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar24) {\n      *(undefined4 *)(param_1 + 0x5a88) = 0;\n    }\n    else {\n      iVar14 = 8;\n      pbVar20 = pbVar19;\n      pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar24 = (!bVar23 && !bVar24) == bVar23;\n      if (bVar24) {\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }\n      else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }\n    }" if (parenthesized_expression "(bVar24)" ( identifier )) (compound_statement "{\n      *(undefined4 *)(param_1 + 0x5a88) = 0;\n    }" { (expression_statement "*(undefined4 *)(param_1 + 0x5a88) = 0;" (assignment_expression "*(undefined4 *)(param_1 + 0x5a88) = 0" (pointer_expression "*(undefined4 *)(param_1 + 0x5a88)" * (cast_expression "(undefined4 *)(param_1 + 0x5a88)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5a88)" ( (binary_expression "param_1 + 0x5a88" identifier + number_literal) )))) = number_literal) ;) }) (else_clause "else {\n      iVar14 = 8;\n      pbVar20 = pbVar19;\n      pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar24 = (!bVar23 && !bVar24) == bVar23;\n      if (bVar24) {\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }\n      else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }\n    }" else (compound_statement "{\n      iVar14 = 8;\n      pbVar20 = pbVar19;\n      pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar24 = (!bVar23 && !bVar24) == bVar23;\n      if (bVar24) {\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }\n      else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }\n    }" { (expression_statement "iVar14 = 8;" (assignment_expression "iVar14 = 8" identifier = number_literal) ;) (expression_statement "pbVar20 = pbVar19;" (assignment_expression "pbVar20 = pbVar19" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);" (assignment_expression "pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3)" identifier = (cast_expression "(byte *)((int)local_1c4 + -0x10e8f3)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1c4 + -0x10e8f3)" ( (binary_expression "(int)local_1c4 + -0x10e8f3" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (do_statement "do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      } while (bVar24);" do (compound_statement "{\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      }" { (if_statement "if (iVar14 == 0) break;" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" identifier = (binary_expression "iVar14 + -1" identifier + number_literal)) ;) (expression_statement "bVar23 = *pbVar20 < *pbVar21;" (assignment_expression "bVar23 = *pbVar20 < *pbVar21" identifier = (binary_expression "*pbVar20 < *pbVar21" (pointer_expression "*pbVar20" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar24 = *pbVar20 == *pbVar21;" (assignment_expression "bVar24 = *pbVar20 == *pbVar21" identifier = (binary_expression "*pbVar20 == *pbVar21" (pointer_expression "*pbVar20" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1" identifier = (binary_expression "pbVar20 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar25 * -2" identifier + (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1" identifier = (binary_expression "pbVar21 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar21 + (uint)bVar25 * -2" identifier + (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar24)" ( identifier )) ;) (expression_statement "bVar22 = false;" (assignment_expression "bVar22 = false" identifier = false) ;) (expression_statement "bVar24 = (!bVar23 && !bVar24) == bVar23;" (assignment_expression "bVar24 = (!bVar23 && !bVar24) == bVar23" identifier = (binary_expression "(!bVar23 && !bVar24) == bVar23" (parenthesized_expression "(!bVar23 && !bVar24)" ( (binary_expression "!bVar23 && !bVar24" (unary_expression "!bVar23" ! identifier) && (unary_expression "!bVar24" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar24) {\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }\n      else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }" if (parenthesized_expression "(bVar24)" ( identifier )) (compound_statement "{\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }" { (expression_statement "*(undefined4 *)(param_1 + 0x5a88) = 1;" (assignment_expression "*(undefined4 *)(param_1 + 0x5a88) = 1" (pointer_expression "*(undefined4 *)(param_1 + 0x5a88)" * (cast_expression "(undefined4 *)(param_1 + 0x5a88)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5a88)" ( (binary_expression "param_1 + 0x5a88" identifier + number_literal) )))) = number_literal) ;) }) (else_clause "else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }" else (compound_statement "{\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }" { (expression_statement "iVar14 = 5;" (assignment_expression "iVar14 = 5" identifier = number_literal) ;) (expression_statement "pbVar20 = pbVar19;" (assignment_expression "pbVar20 = pbVar19" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);" (assignment_expression "pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb)" identifier = (cast_expression "(byte *)((int)local_1c4 + -0x10e8eb)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1c4 + -0x10e8eb)" ( (binary_expression "(int)local_1c4 + -0x10e8eb" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (do_statement "do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);" do (compound_statement "{\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        }" { (if_statement "if (iVar14 == 0) break;" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" identifier = (binary_expression "iVar14 + -1" identifier + number_literal)) ;) (expression_statement "bVar22 = *pbVar20 < *pbVar21;" (assignment_expression "bVar22 = *pbVar20 < *pbVar21" identifier = (binary_expression "*pbVar20 < *pbVar21" (pointer_expression "*pbVar20" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar24 = *pbVar20 == *pbVar21;" (assignment_expression "bVar24 = *pbVar20 == *pbVar21" identifier = (binary_expression "*pbVar20 == *pbVar21" (pointer_expression "*pbVar20" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1" identifier = (binary_expression "pbVar20 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar25 * -2" identifier + (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1" identifier = (binary_expression "pbVar21 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar21 + (uint)bVar25 * -2" identifier + (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar24)" ( identifier )) ;) (expression_statement "bVar23 = false;" (assignment_expression "bVar23 = false" identifier = false) ;) (expression_statement "bVar24 = (!bVar22 && !bVar24) == bVar22;" (assignment_expression "bVar24 = (!bVar22 && !bVar24) == bVar22" identifier = (binary_expression "(!bVar22 && !bVar24) == bVar22" (parenthesized_expression "(!bVar22 && !bVar24)" ( (binary_expression "!bVar22 && !bVar24" (unary_expression "!bVar22" ! identifier) && (unary_expression "!bVar24" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }" if (parenthesized_expression "(bVar24)" ( identifier )) (compound_statement "{\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }" { (expression_statement "*(undefined4 *)(param_1 + 0x5a88) = 2;" (assignment_expression "*(undefined4 *)(param_1 + 0x5a88) = 2" (pointer_expression "*(undefined4 *)(param_1 + 0x5a88)" * (cast_expression "(undefined4 *)(param_1 + 0x5a88)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5a88)" ( (binary_expression "param_1 + 0x5a88" identifier + number_literal) )))) = number_literal) ;) }) (else_clause "else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }" else (compound_statement "{\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }" { (expression_statement "iVar14 = 6;" (assignment_expression "iVar14 = 6" identifier = number_literal) ;) (expression_statement "pbVar20 = (byte *)((int)local_1c4 + -0xea022);" (assignment_expression "pbVar20 = (byte *)((int)local_1c4 + -0xea022)" identifier = (cast_expression "(byte *)((int)local_1c4 + -0xea022)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1c4 + -0xea022)" ( (binary_expression "(int)local_1c4 + -0xea022" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (do_statement "do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);" do (compound_statement "{\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          }" { (if_statement "if (iVar14 == 0) break;" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" identifier = (binary_expression "iVar14 + -1" identifier + number_literal)) ;) (expression_statement "bVar23 = *pbVar19 < *pbVar20;" (assignment_expression "bVar23 = *pbVar19 < *pbVar20" identifier = (binary_expression "*pbVar19 < *pbVar20" (pointer_expression "*pbVar19" * identifier) < (pointer_expression "*pbVar20" * identifier))) ;) (expression_statement "bVar24 = *pbVar19 == *pbVar20;" (assignment_expression "bVar24 = *pbVar19 == *pbVar20" identifier = (binary_expression "*pbVar19 == *pbVar20" (pointer_expression "*pbVar19" * identifier) == (pointer_expression "*pbVar20" * identifier))) ;) (expression_statement "pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1" identifier = (binary_expression "pbVar19 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar19 + (uint)bVar25 * -2" identifier + (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1" identifier = (binary_expression "pbVar20 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar25 * -2" identifier + (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar24)" ( identifier )) ;) (if_statement "if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }" if (parenthesized_expression "((!bVar23 && !bVar24) == bVar23)" ( (binary_expression "(!bVar23 && !bVar24) == bVar23" (parenthesized_expression "(!bVar23 && !bVar24)" ( (binary_expression "!bVar23 && !bVar24" (unary_expression "!bVar23" ! identifier) && (unary_expression "!bVar24" ! identifier)) )) == identifier) )) (compound_statement "{\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }" { (expression_statement "*(undefined4 *)(param_1 + 0x5a88) = 3;" (assignment_expression "*(undefined4 *)(param_1 + 0x5a88) = 3" (pointer_expression "*(undefined4 *)(param_1 + 0x5a88)" * (cast_expression "(undefined4 *)(param_1 + 0x5a88)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5a88)" ( (binary_expression "param_1 + 0x5a88" identifier + number_literal) )))) = number_literal) ;) })) }))) }))) }))) })) (if_statement "if ((*(char *)(param_1 + 0x2401) != '\0') && (*(char *)(param_1 + 0x247c) == '\0')) {\n    *(undefined1 *)(param_1 + 0x247c) = 1;\n    *(undefined ***)(param_1 + 0x2480) = local_1c4 + -0x4062a;\n  }" if (parenthesized_expression "((*(char *)(param_1 + 0x2401) != '\0') && (*(char *)(param_1 + 0x247c) == '\0'))" ( (binary_expression "(*(char *)(param_1 + 0x2401) != '\0') && (*(char *)(param_1 + 0x247c) == '\0')" (parenthesized_expression "(*(char *)(param_1 + 0x2401) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x2401) != '\0'" (pointer_expression "*(char *)(param_1 + 0x2401)" * (cast_expression "(char *)(param_1 + 0x2401)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2401)" ( (binary_expression "param_1 + 0x2401" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(*(char *)(param_1 + 0x247c) == '\0')" ( (binary_expression "*(char *)(param_1 + 0x247c) == '\0'" (pointer_expression "*(char *)(param_1 + 0x247c)" * (cast_expression "(char *)(param_1 + 0x247c)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x247c)" ( (binary_expression "param_1 + 0x247c" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n    *(undefined1 *)(param_1 + 0x247c) = 1;\n    *(undefined ***)(param_1 + 0x2480) = local_1c4 + -0x4062a;\n  }" { (expression_statement "*(undefined1 *)(param_1 + 0x247c) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x247c) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x247c)" * (cast_expression "(undefined1 *)(param_1 + 0x247c)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x247c)" ( (binary_expression "param_1 + 0x247c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined ***)(param_1 + 0x2480) = local_1c4 + -0x4062a;" (assignment_expression "*(undefined ***)(param_1 + 0x2480) = local_1c4 + -0x4062a" (pointer_expression "*(undefined ***)(param_1 + 0x2480)" * (cast_expression "(undefined ***)(param_1 + 0x2480)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(param_1 + 0x2480)" ( (binary_expression "param_1 + 0x2480" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x4062a" identifier + number_literal)) ;) })) (if_statement "if ((*(char *)(param_1 + 0x24c1) != '\0') || (*(char *)(param_1 + 0x253d) != '\0')) {\n    *(undefined1 *)(param_1 + 0x5938) = 1;\n  }" if (parenthesized_expression "((*(char *)(param_1 + 0x24c1) != '\0') || (*(char *)(param_1 + 0x253d) != '\0'))" ( (binary_expression "(*(char *)(param_1 + 0x24c1) != '\0') || (*(char *)(param_1 + 0x253d) != '\0')" (parenthesized_expression "(*(char *)(param_1 + 0x24c1) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x24c1) != '\0'" (pointer_expression "*(char *)(param_1 + 0x24c1)" * (cast_expression "(char *)(param_1 + 0x24c1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x24c1)" ( (binary_expression "param_1 + 0x24c1" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(*(char *)(param_1 + 0x253d) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x253d) != '\0'" (pointer_expression "*(char *)(param_1 + 0x253d)" * (cast_expression "(char *)(param_1 + 0x253d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x253d)" ( (binary_expression "param_1 + 0x253d" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n    *(undefined1 *)(param_1 + 0x5938) = 1;\n  }" { (expression_statement "*(undefined1 *)(param_1 + 0x5938) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x5938) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x5938)" * (cast_expression "(undefined1 *)(param_1 + 0x5938)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5938)" ( (binary_expression "param_1 + 0x5938" identifier + number_literal) )))) = number_literal) ;) })) (expression_statement "iVar14 = *(int *)(param_1 + 0x3de8);" (assignment_expression "iVar14 = *(int *)(param_1 + 0x3de8)" identifier = (pointer_expression "*(int *)(param_1 + 0x3de8)" * (cast_expression "(int *)(param_1 + 0x3de8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3de8)" ( (binary_expression "param_1 + 0x3de8" identifier + number_literal) ))))) ;) (if_statement "if (0 < iVar14) {\n    if (*(int *)(param_1 + 0x3e2c) == 0) {\n      *(int *)(param_1 + 0x3e2c) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3e70) == 0) {\n      *(int *)(param_1 + 0x3e70) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3eb4) == 0) {\n      *(int *)(param_1 + 0x3eb4) = iVar14;\n    }\n  }" if (parenthesized_expression "(0 < iVar14)" ( (binary_expression "0 < iVar14" number_literal < identifier) )) (compound_statement "{\n    if (*(int *)(param_1 + 0x3e2c) == 0) {\n      *(int *)(param_1 + 0x3e2c) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3e70) == 0) {\n      *(int *)(param_1 + 0x3e70) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3eb4) == 0) {\n      *(int *)(param_1 + 0x3eb4) = iVar14;\n    }\n  }" { (if_statement "if (*(int *)(param_1 + 0x3e2c) == 0) {\n      *(int *)(param_1 + 0x3e2c) = iVar14;\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0x3e2c) == 0)" ( (binary_expression "*(int *)(param_1 + 0x3e2c) == 0" (pointer_expression "*(int *)(param_1 + 0x3e2c)" * (cast_expression "(int *)(param_1 + 0x3e2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3e2c)" ( (binary_expression "param_1 + 0x3e2c" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      *(int *)(param_1 + 0x3e2c) = iVar14;\n    }" { (expression_statement "*(int *)(param_1 + 0x3e2c) = iVar14;" (assignment_expression "*(int *)(param_1 + 0x3e2c) = iVar14" (pointer_expression "*(int *)(param_1 + 0x3e2c)" * (cast_expression "(int *)(param_1 + 0x3e2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3e2c)" ( (binary_expression "param_1 + 0x3e2c" identifier + number_literal) )))) = identifier) ;) })) (if_statement "if (*(int *)(param_1 + 0x3e70) == 0) {\n      *(int *)(param_1 + 0x3e70) = iVar14;\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0x3e70) == 0)" ( (binary_expression "*(int *)(param_1 + 0x3e70) == 0" (pointer_expression "*(int *)(param_1 + 0x3e70)" * (cast_expression "(int *)(param_1 + 0x3e70)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3e70)" ( (binary_expression "param_1 + 0x3e70" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      *(int *)(param_1 + 0x3e70) = iVar14;\n    }" { (expression_statement "*(int *)(param_1 + 0x3e70) = iVar14;" (assignment_expression "*(int *)(param_1 + 0x3e70) = iVar14" (pointer_expression "*(int *)(param_1 + 0x3e70)" * (cast_expression "(int *)(param_1 + 0x3e70)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3e70)" ( (binary_expression "param_1 + 0x3e70" identifier + number_literal) )))) = identifier) ;) })) (if_statement "if (*(int *)(param_1 + 0x3eb4) == 0) {\n      *(int *)(param_1 + 0x3eb4) = iVar14;\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0x3eb4) == 0)" ( (binary_expression "*(int *)(param_1 + 0x3eb4) == 0" (pointer_expression "*(int *)(param_1 + 0x3eb4)" * (cast_expression "(int *)(param_1 + 0x3eb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3eb4)" ( (binary_expression "param_1 + 0x3eb4" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      *(int *)(param_1 + 0x3eb4) = iVar14;\n    }" { (expression_statement "*(int *)(param_1 + 0x3eb4) = iVar14;" (assignment_expression "*(int *)(param_1 + 0x3eb4) = iVar14" (pointer_expression "*(int *)(param_1 + 0x3eb4)" * (cast_expression "(int *)(param_1 + 0x3eb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3eb4)" ( (binary_expression "param_1 + 0x3eb4" identifier + number_literal) )))) = identifier) ;) })) })) (expression_statement "local_1d4 = &local_1bc;" (assignment_expression "local_1d4 = &local_1bc" identifier = (pointer_expression "&local_1bc" & identifier)) ;) (expression_statement "local_1b4[0] = 0;" (assignment_expression "local_1b4[0] = 0" (subscript_expression "local_1b4[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "local_1ec = local_1b4;" (assignment_expression "local_1ec = local_1b4" identifier = identifier) ;) (expression_statement "local_1b8 = 0;" (assignment_expression "local_1b8 = 0" identifier = number_literal) ;) (expression_statement "local_1bc = local_1ec;" (assignment_expression "local_1bc = local_1ec" identifier = identifier) ;) (if_statement "if (*(char *)(param_1 + 0x4ca8) == '\0') {\n    if (*(char *)(param_1 + 0x2729) == '\0') {\n      local_1dc = local_12c;\n      local_1d0 = (undefined ***)&local_134;\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0);\n      local_1a4 = local_19c;\n                    \n      FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_18c = 1;\n      if (local_1a0 == 0) {\n                    \n        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      local_1d8 = param_1 + 0x2184;\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_1a4);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_1a4 != local_19c) {\n        FUN_001e6db0(local_1a4);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0);\n      local_188 = local_180;\n                    \n      FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_170 = 1;\n      if (local_184 == 0) {\n                    \n        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_188);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_188 != local_180) {\n        FUN_001e6db0(local_188);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0);\n      local_16c = local_164;\n                    \n      FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_154 = 1;\n      if (local_168 == 0) {\n                    \n        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_16c);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_16c != local_164) {\n        FUN_001e6db0(local_16c);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0);\n      local_1e0 = local_148;\n      local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n      local_150 = local_1e0;\n                    \n      FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_138 = 1;\n      if (local_14c == 0) {\n                    \n        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_150 != local_1e0) {\n        FUN_001e6db0(local_150);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      goto LAB_000e7f08;\n    }\n  }\n  else {\n    pcVar12 = *(char **)(param_1 + 0x4cac);\n    sVar9 = strlen(pcVar12);\n    ppuVar3 = local_1d4;\n                    \n    FUN_001ef9f0(local_1d4,0,0,pcVar12,sVar9);\n    iVar14 = FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6);\n    if (iVar14 == 0) {\n      uVar6 = local_1b8;\n      if (2 < local_1b8) {\n        uVar6 = 2;\n      }\n                    \n      FUN_001eebf0(local_1d4,0,uVar6);\n    }\nLAB_000e7f08:\n    uVar6 = 0;\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n    if (local_1b8 != 0) {\n      do {\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    \n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      } while( true );\n    }\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0x4ca8) == '\0')" ( (binary_expression "*(char *)(param_1 + 0x4ca8) == '\0'" (pointer_expression "*(char *)(param_1 + 0x4ca8)" * (cast_expression "(char *)(param_1 + 0x4ca8)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x4ca8)" ( (binary_expression "param_1 + 0x4ca8" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (*(char *)(param_1 + 0x2729) == '\0') {\n      local_1dc = local_12c;\n      local_1d0 = (undefined ***)&local_134;\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0);\n      local_1a4 = local_19c;\n                    \n      FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_18c = 1;\n      if (local_1a0 == 0) {\n                    \n        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      local_1d8 = param_1 + 0x2184;\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_1a4);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_1a4 != local_19c) {\n        FUN_001e6db0(local_1a4);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0);\n      local_188 = local_180;\n                    \n      FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_170 = 1;\n      if (local_184 == 0) {\n                    \n        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_188);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_188 != local_180) {\n        FUN_001e6db0(local_188);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0);\n      local_16c = local_164;\n                    \n      FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_154 = 1;\n      if (local_168 == 0) {\n                    \n        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_16c);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_16c != local_164) {\n        FUN_001e6db0(local_16c);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0);\n      local_1e0 = local_148;\n      local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n      local_150 = local_1e0;\n                    \n      FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_138 = 1;\n      if (local_14c == 0) {\n                    \n        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_150 != local_1e0) {\n        FUN_001e6db0(local_150);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      goto LAB_000e7f08;\n    }\n  }" { (if_statement "if (*(char *)(param_1 + 0x2729) == '\0') {\n      local_1dc = local_12c;\n      local_1d0 = (undefined ***)&local_134;\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0);\n      local_1a4 = local_19c;\n                    \n      FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_18c = 1;\n      if (local_1a0 == 0) {\n                    \n        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      local_1d8 = param_1 + 0x2184;\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_1a4);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_1a4 != local_19c) {\n        FUN_001e6db0(local_1a4);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0);\n      local_188 = local_180;\n                    \n      FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_170 = 1;\n      if (local_184 == 0) {\n                    \n        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_188);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_188 != local_180) {\n        FUN_001e6db0(local_188);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0);\n      local_16c = local_164;\n                    \n      FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_154 = 1;\n      if (local_168 == 0) {\n                    \n        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_16c);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_16c != local_164) {\n        FUN_001e6db0(local_16c);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0);\n      local_1e0 = local_148;\n      local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n      local_150 = local_1e0;\n                    \n      FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_138 = 1;\n      if (local_14c == 0) {\n                    \n        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_150 != local_1e0) {\n        FUN_001e6db0(local_150);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      goto LAB_000e7f08;\n    }" if (parenthesized_expression "(*(char *)(param_1 + 0x2729) == '\0')" ( (binary_expression "*(char *)(param_1 + 0x2729) == '\0'" (pointer_expression "*(char *)(param_1 + 0x2729)" * (cast_expression "(char *)(param_1 + 0x2729)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2729)" ( (binary_expression "param_1 + 0x2729" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      local_1dc = local_12c;\n      local_1d0 = (undefined ***)&local_134;\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0);\n      local_1a4 = local_19c;\n                    \n      FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_18c = 1;\n      if (local_1a0 == 0) {\n                    \n        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      local_1d8 = param_1 + 0x2184;\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_1a4);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_1a4 != local_19c) {\n        FUN_001e6db0(local_1a4);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0);\n      local_188 = local_180;\n                    \n      FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_170 = 1;\n      if (local_184 == 0) {\n                    \n        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_188);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_188 != local_180) {\n        FUN_001e6db0(local_188);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0);\n      local_16c = local_164;\n                    \n      FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_154 = 1;\n      if (local_168 == 0) {\n                    \n        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_16c);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_16c != local_164) {\n        FUN_001e6db0(local_16c);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0);\n      local_1e0 = local_148;\n      local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n      local_150 = local_1e0;\n                    \n      FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_138 = 1;\n      if (local_14c == 0) {\n                    \n        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_150 != local_1e0) {\n        FUN_001e6db0(local_150);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      goto LAB_000e7f08;\n    }" { (expression_statement "local_1dc = local_12c;" (assignment_expression "local_1dc = local_12c" identifier = identifier) ;) (expression_statement "local_1d0 = (undefined ***)&local_134;" (assignment_expression "local_1d0 = (undefined ***)&local_134" identifier = (cast_expression "(undefined ***)&local_134" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (pointer_expression "&local_134" & identifier))) ;) (expression_statement "local_134 = local_1dc;" (assignment_expression "local_134 = local_1dc" identifier = identifier) ;) (expression_statement "FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0);" (call_expression "FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0)" identifier (argument_list "(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0)" ( identifier , (binary_expression "(int)local_1c4 + -0x1003bf" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , (binary_expression "(int)local_1c4 + -0x1003b2" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , number_literal ))) ;) (expression_statement "local_1a4 = local_19c;" (assignment_expression "local_1a4 = local_19c" identifier = identifier) ;) (expression_statement "FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0);" (call_expression "FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0)" identifier (argument_list "(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0)" ( (pointer_expression "&local_1a4" & identifier) , identifier , (cast_expression "(undefined *)(local_130 + (int)local_134)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_130 + (int)local_134)" ( (binary_expression "local_130 + (int)local_134" identifier + (cast_expression "(int)local_134" ( (type_descriptor "int" primitive_type) ) identifier)) ))) , number_literal ))) ;) (expression_statement "local_18c = 1;" (assignment_expression "local_18c = 1" identifier = number_literal) ;) (if_statement "if (local_1a0 == 0) {\n                    \n        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);\n      }" if (parenthesized_expression "(local_1a0 == 0)" ( (binary_expression "local_1a0 == 0" identifier == number_literal) )) (compound_statement "{\n                    \n        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);\n      }" { (expression_statement "FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);" (call_expression "FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1)" identifier (argument_list "(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1)" ( (pointer_expression "&local_1a4" & identifier) , number_literal , number_literal , (binary_expression "(int)local_1c4 + -0x1013b5" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , number_literal ))) ;) })) (expression_statement "local_1d8 = param_1 + 0x2184;" (assignment_expression "local_1d8 = param_1 + 0x2184" identifier = (binary_expression "param_1 + 0x2184" identifier + number_literal)) ;) (expression_statement "piVar7 = *(int **)(param_1 + 0x2188);" (assignment_expression "piVar7 = *(int **)(param_1 + 0x2188)" identifier = (pointer_expression "*(int **)(param_1 + 0x2188)" * (cast_expression "(int **)(param_1 + 0x2188)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) ))))) ;) (if_statement "if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_1a4);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" if (parenthesized_expression "(piVar7 == *(int **)(param_1 + 0x218c))" ( (binary_expression "piVar7 == *(int **)(param_1 + 0x218c)" identifier == (pointer_expression "*(int **)(param_1 + 0x218c)" * (cast_expression "(int **)(param_1 + 0x218c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x218c)" ( (binary_expression "param_1 + 0x218c" identifier + number_literal) ))))) )) (compound_statement "{\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_1a4);\n      }" { (expression_statement "FUN_000eae90(local_1d8,piVar7,&local_1a4);" (call_expression "FUN_000eae90(local_1d8,piVar7,&local_1a4)" identifier (argument_list "(local_1d8,piVar7,&local_1a4)" ( identifier , identifier , (pointer_expression "&local_1a4" & identifier) ))) ;) }) (else_clause "else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" else (compound_statement "{\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" { (expression_statement "*piVar7 = (int)(piVar7 + 2);" (assignment_expression "*piVar7 = (int)(piVar7 + 2)" (pointer_expression "*piVar7" * identifier) = (cast_expression "(int)(piVar7 + 2)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar7 + 2)" ( (binary_expression "piVar7 + 2" identifier + number_literal) )))) ;) (expression_statement "FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);" (call_expression "FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0)" identifier (argument_list "(piVar7,local_1a4,local_1a4 + local_1a0,0)" ( identifier , identifier , (binary_expression "local_1a4 + local_1a0" identifier + identifier) , number_literal ))) ;) (expression_statement "*(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;" (assignment_expression "*(undefined1 *)(piVar7 + 6) = (undefined1)local_18c" (pointer_expression "*(undefined1 *)(piVar7 + 6)" * (cast_expression "(undefined1 *)(piVar7 + 6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7 + 6)" ( (binary_expression "piVar7 + 6" identifier + number_literal) )))) = (cast_expression "(undefined1)local_18c" ( (type_descriptor "undefined1" type_identifier) ) identifier)) ;) (expression_statement "*(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;" (assignment_expression "*(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_" (pointer_expression "*(undefined1 *)((int)piVar7 + 0x19)" * (cast_expression "(undefined1 *)((int)piVar7 + 0x19)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar7 + 0x19)" ( (binary_expression "(int)piVar7 + 0x19" (cast_expression "(int)piVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (field_expression "local_18c._1_1_" identifier . field_identifier)) ;) (expression_statement "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;" (assignment_expression "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" * (cast_expression "(int *)(param_1 + 0x2188)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) )))) = (binary_expression "*(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" * (cast_expression "(int *)(param_1 + 0x2188)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) )))) + number_literal)) ;) }))) (if_statement "if (local_1a4 != local_19c) {\n        FUN_001e6db0(local_1a4);\n      }" if (parenthesized_expression "(local_1a4 != local_19c)" ( (binary_expression "local_1a4 != local_19c" identifier != identifier) )) (compound_statement "{\n        FUN_001e6db0(local_1a4);\n      }" { (expression_statement "FUN_001e6db0(local_1a4);" (call_expression "FUN_001e6db0(local_1a4)" identifier (argument_list "(local_1a4)" ( identifier ))) ;) })) (if_statement "if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }" if (parenthesized_expression "(local_134 != local_1dc)" ( (binary_expression "local_134 != local_1dc" identifier != identifier) )) (compound_statement "{\n        FUN_001e6db0(local_134);\n      }" { (expression_statement "FUN_001e6db0(local_134);" (call_expression "FUN_001e6db0(local_134)" identifier (argument_list "(local_134)" ( identifier ))) ;) })) (expression_statement "local_134 = local_1dc;" (assignment_expression "local_134 = local_1dc" identifier = identifier) ;) (expression_statement "FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0);" (call_expression "FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0)" identifier (argument_list "(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0)" ( identifier , (binary_expression "(int)local_1c4 + -0x1003c3" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , (binary_expression "(int)local_1c4 + -0x1003b2" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , number_literal ))) ;) (expression_statement "local_188 = local_180;" (assignment_expression "local_188 = local_180" identifier = identifier) ;) (expression_statement "FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0);" (call_expression "FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0)" identifier (argument_list "(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0)" ( (pointer_expression "&local_188" & identifier) , identifier , (cast_expression "(undefined *)(local_130 + (int)local_134)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_130 + (int)local_134)" ( (binary_expression "local_130 + (int)local_134" identifier + (cast_expression "(int)local_134" ( (type_descriptor "int" primitive_type) ) identifier)) ))) , number_literal ))) ;) (expression_statement "local_170 = 1;" (assignment_expression "local_170 = 1" identifier = number_literal) ;) (if_statement "if (local_184 == 0) {\n                    \n        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);\n      }" if (parenthesized_expression "(local_184 == 0)" ( (binary_expression "local_184 == 0" identifier == number_literal) )) (compound_statement "{\n                    \n        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);\n      }" { (expression_statement "FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);" (call_expression "FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1)" identifier (argument_list "(&local_188,0,0,(int)local_1c4 + -0x1013b5,1)" ( (pointer_expression "&local_188" & identifier) , number_literal , number_literal , (binary_expression "(int)local_1c4 + -0x1013b5" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , number_literal ))) ;) })) (expression_statement "piVar7 = *(int **)(param_1 + 0x2188);" (assignment_expression "piVar7 = *(int **)(param_1 + 0x2188)" identifier = (pointer_expression "*(int **)(param_1 + 0x2188)" * (cast_expression "(int **)(param_1 + 0x2188)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) ))))) ;) (if_statement "if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_188);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" if (parenthesized_expression "(piVar7 == *(int **)(param_1 + 0x218c))" ( (binary_expression "piVar7 == *(int **)(param_1 + 0x218c)" identifier == (pointer_expression "*(int **)(param_1 + 0x218c)" * (cast_expression "(int **)(param_1 + 0x218c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x218c)" ( (binary_expression "param_1 + 0x218c" identifier + number_literal) ))))) )) (compound_statement "{\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_188);\n      }" { (expression_statement "FUN_000eae90(local_1d8,piVar7,&local_188);" (call_expression "FUN_000eae90(local_1d8,piVar7,&local_188)" identifier (argument_list "(local_1d8,piVar7,&local_188)" ( identifier , identifier , (pointer_expression "&local_188" & identifier) ))) ;) }) (else_clause "else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" else (compound_statement "{\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" { (expression_statement "*piVar7 = (int)(piVar7 + 2);" (assignment_expression "*piVar7 = (int)(piVar7 + 2)" (pointer_expression "*piVar7" * identifier) = (cast_expression "(int)(piVar7 + 2)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar7 + 2)" ( (binary_expression "piVar7 + 2" identifier + number_literal) )))) ;) (expression_statement "FUN_000513a0(piVar7,local_188,local_188 + local_184,0);" (call_expression "FUN_000513a0(piVar7,local_188,local_188 + local_184,0)" identifier (argument_list "(piVar7,local_188,local_188 + local_184,0)" ( identifier , identifier , (binary_expression "local_188 + local_184" identifier + identifier) , number_literal ))) ;) (expression_statement "*(undefined1 *)(piVar7 + 6) = (undefined1)local_170;" (assignment_expression "*(undefined1 *)(piVar7 + 6) = (undefined1)local_170" (pointer_expression "*(undefined1 *)(piVar7 + 6)" * (cast_expression "(undefined1 *)(piVar7 + 6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7 + 6)" ( (binary_expression "piVar7 + 6" identifier + number_literal) )))) = (cast_expression "(undefined1)local_170" ( (type_descriptor "undefined1" type_identifier) ) identifier)) ;) (expression_statement "*(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;" (assignment_expression "*(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_" (pointer_expression "*(undefined1 *)((int)piVar7 + 0x19)" * (cast_expression "(undefined1 *)((int)piVar7 + 0x19)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar7 + 0x19)" ( (binary_expression "(int)piVar7 + 0x19" (cast_expression "(int)piVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (field_expression "local_170._1_1_" identifier . field_identifier)) ;) (expression_statement "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;" (assignment_expression "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" * (cast_expression "(int *)(param_1 + 0x2188)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) )))) = (binary_expression "*(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" * (cast_expression "(int *)(param_1 + 0x2188)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) )))) + number_literal)) ;) }))) (if_statement "if (local_188 != local_180) {\n        FUN_001e6db0(local_188);\n      }" if (parenthesized_expression "(local_188 != local_180)" ( (binary_expression "local_188 != local_180" identifier != identifier) )) (compound_statement "{\n        FUN_001e6db0(local_188);\n      }" { (expression_statement "FUN_001e6db0(local_188);" (call_expression "FUN_001e6db0(local_188)" identifier (argument_list "(local_188)" ( identifier ))) ;) })) (if_statement "if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }" if (parenthesized_expression "(local_134 != local_1dc)" ( (binary_expression "local_134 != local_1dc" identifier != identifier) )) (compound_statement "{\n        FUN_001e6db0(local_134);\n      }" { (expression_statement "FUN_001e6db0(local_134);" (call_expression "FUN_001e6db0(local_134)" identifier (argument_list "(local_134)" ( identifier ))) ;) })) (expression_statement "local_134 = local_1dc;" (assignment_expression "local_134 = local_1dc" identifier = identifier) ;) (expression_statement "FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0);" (call_expression "FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0)" identifier (argument_list "(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0)" ( identifier , (binary_expression "(int)local_1c4 + -0x1003ad" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , (binary_expression "(int)local_1c4 + -0x1003a9" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , number_literal ))) ;) (expression_statement "local_16c = local_164;" (assignment_expression "local_16c = local_164" identifier = identifier) ;) (expression_statement "FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0);" (call_expression "FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0)" identifier (argument_list "(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0)" ( (pointer_expression "&local_16c" & identifier) , identifier , (cast_expression "(undefined *)(local_130 + (int)local_134)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_130 + (int)local_134)" ( (binary_expression "local_130 + (int)local_134" identifier + (cast_expression "(int)local_134" ( (type_descriptor "int" primitive_type) ) identifier)) ))) , number_literal ))) ;) (expression_statement "local_154 = 1;" (assignment_expression "local_154 = 1" identifier = number_literal) ;) (if_statement "if (local_168 == 0) {\n                    \n        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);\n      }" if (parenthesized_expression "(local_168 == 0)" ( (binary_expression "local_168 == 0" identifier == number_literal) )) (compound_statement "{\n                    \n        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);\n      }" { (expression_statement "FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);" (call_expression "FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1)" identifier (argument_list "(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1)" ( (pointer_expression "&local_16c" & identifier) , number_literal , number_literal , (binary_expression "(int)local_1c4 + -0x1013b5" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , number_literal ))) ;) })) (expression_statement "piVar7 = *(int **)(param_1 + 0x2188);" (assignment_expression "piVar7 = *(int **)(param_1 + 0x2188)" identifier = (pointer_expression "*(int **)(param_1 + 0x2188)" * (cast_expression "(int **)(param_1 + 0x2188)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) ))))) ;) (if_statement "if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_16c);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" if (parenthesized_expression "(piVar7 == *(int **)(param_1 + 0x218c))" ( (binary_expression "piVar7 == *(int **)(param_1 + 0x218c)" identifier == (pointer_expression "*(int **)(param_1 + 0x218c)" * (cast_expression "(int **)(param_1 + 0x218c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x218c)" ( (binary_expression "param_1 + 0x218c" identifier + number_literal) ))))) )) (compound_statement "{\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_16c);\n      }" { (expression_statement "FUN_000eae90(local_1d8,piVar7,&local_16c);" (call_expression "FUN_000eae90(local_1d8,piVar7,&local_16c)" identifier (argument_list "(local_1d8,piVar7,&local_16c)" ( identifier , identifier , (pointer_expression "&local_16c" & identifier) ))) ;) }) (else_clause "else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" else (compound_statement "{\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" { (expression_statement "*piVar7 = (int)(piVar7 + 2);" (assignment_expression "*piVar7 = (int)(piVar7 + 2)" (pointer_expression "*piVar7" * identifier) = (cast_expression "(int)(piVar7 + 2)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar7 + 2)" ( (binary_expression "piVar7 + 2" identifier + number_literal) )))) ;) (expression_statement "FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);" (call_expression "FUN_000513a0(piVar7,local_16c,local_16c + local_168,0)" identifier (argument_list "(piVar7,local_16c,local_16c + local_168,0)" ( identifier , identifier , (binary_expression "local_16c + local_168" identifier + identifier) , number_literal ))) ;) (expression_statement "*(undefined1 *)(piVar7 + 6) = (undefined1)local_154;" (assignment_expression "*(undefined1 *)(piVar7 + 6) = (undefined1)local_154" (pointer_expression "*(undefined1 *)(piVar7 + 6)" * (cast_expression "(undefined1 *)(piVar7 + 6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7 + 6)" ( (binary_expression "piVar7 + 6" identifier + number_literal) )))) = (cast_expression "(undefined1)local_154" ( (type_descriptor "undefined1" type_identifier) ) identifier)) ;) (expression_statement "*(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;" (assignment_expression "*(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_" (pointer_expression "*(undefined1 *)((int)piVar7 + 0x19)" * (cast_expression "(undefined1 *)((int)piVar7 + 0x19)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar7 + 0x19)" ( (binary_expression "(int)piVar7 + 0x19" (cast_expression "(int)piVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (field_expression "local_154._1_1_" identifier . field_identifier)) ;) (expression_statement "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;" (assignment_expression "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" * (cast_expression "(int *)(param_1 + 0x2188)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) )))) = (binary_expression "*(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" * (cast_expression "(int *)(param_1 + 0x2188)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) )))) + number_literal)) ;) }))) (if_statement "if (local_16c != local_164) {\n        FUN_001e6db0(local_16c);\n      }" if (parenthesized_expression "(local_16c != local_164)" ( (binary_expression "local_16c != local_164" identifier != identifier) )) (compound_statement "{\n        FUN_001e6db0(local_16c);\n      }" { (expression_statement "FUN_001e6db0(local_16c);" (call_expression "FUN_001e6db0(local_16c)" identifier (argument_list "(local_16c)" ( identifier ))) ;) })) (if_statement "if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }" if (parenthesized_expression "(local_134 != local_1dc)" ( (binary_expression "local_134 != local_1dc" identifier != identifier) )) (compound_statement "{\n        FUN_001e6db0(local_134);\n      }" { (expression_statement "FUN_001e6db0(local_134);" (call_expression "FUN_001e6db0(local_134)" identifier (argument_list "(local_134)" ( identifier ))) ;) })) (expression_statement "local_134 = local_1dc;" (assignment_expression "local_134 = local_1dc" identifier = identifier) ;) (expression_statement "FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0);" (call_expression "FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0)" identifier (argument_list "(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0)" ( identifier , (binary_expression "(int)local_1c4 + -0x1003b1" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , (binary_expression "(int)local_1c4 + -0x1003a9" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , number_literal ))) ;) (expression_statement "local_1e0 = local_148;" (assignment_expression "local_1e0 = local_148" identifier = identifier) ;) (expression_statement "local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);" (assignment_expression "local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150)" identifier = (cast_expression "(double)CONCAT44(local_1cc._4_4_,&local_150)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(local_1cc._4_4_,&local_150)" identifier (argument_list "(local_1cc._4_4_,&local_150)" ( (field_expression "local_1cc._4_4_" identifier . field_identifier) , (pointer_expression "&local_150" & identifier) ))))) ;) (expression_statement "local_150 = local_1e0;" (assignment_expression "local_150 = local_1e0" identifier = identifier) ;) (expression_statement "FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0);" (call_expression "FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0)" identifier (argument_list "(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0)" ( (pointer_expression "&local_150" & identifier) , identifier , (cast_expression "(undefined *)(local_130 + (int)local_134)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_130 + (int)local_134)" ( (binary_expression "local_130 + (int)local_134" identifier + (cast_expression "(int)local_134" ( (type_descriptor "int" primitive_type) ) identifier)) ))) , number_literal ))) ;) (expression_statement "local_138 = 1;" (assignment_expression "local_138 = 1" identifier = number_literal) ;) (if_statement "if (local_14c == 0) {\n                    \n        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);\n      }" if (parenthesized_expression "(local_14c == 0)" ( (binary_expression "local_14c == 0" identifier == number_literal) )) (compound_statement "{\n                    \n        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);\n      }" { (expression_statement "FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);" (call_expression "FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1)" identifier (argument_list "(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1)" ( (field_expression "local_1cc._0_4_" identifier . field_identifier) , number_literal , number_literal , (binary_expression "(int)local_1c4 + -0x1013b5" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , number_literal ))) ;) })) (expression_statement "piVar7 = *(int **)(param_1 + 0x2188);" (assignment_expression "piVar7 = *(int **)(param_1 + 0x2188)" identifier = (pointer_expression "*(int **)(param_1 + 0x2188)" * (cast_expression "(int **)(param_1 + 0x2188)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) ))))) ;) (if_statement "if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" if (parenthesized_expression "(piVar7 == *(int **)(param_1 + 0x218c))" ( (binary_expression "piVar7 == *(int **)(param_1 + 0x218c)" identifier == (pointer_expression "*(int **)(param_1 + 0x218c)" * (cast_expression "(int **)(param_1 + 0x218c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x218c)" ( (binary_expression "param_1 + 0x218c" identifier + number_literal) ))))) )) (compound_statement "{\n                    \n        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);\n      }" { (expression_statement "FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);" (call_expression "FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_)" identifier (argument_list "(local_1d8,piVar7,local_1cc._0_4_)" ( identifier , identifier , (field_expression "local_1cc._0_4_" identifier . field_identifier) ))) ;) }) (else_clause "else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" else (compound_statement "{\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" { (expression_statement "*piVar7 = (int)(piVar7 + 2);" (assignment_expression "*piVar7 = (int)(piVar7 + 2)" (pointer_expression "*piVar7" * identifier) = (cast_expression "(int)(piVar7 + 2)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar7 + 2)" ( (binary_expression "piVar7 + 2" identifier + number_literal) )))) ;) (expression_statement "FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);" (call_expression "FUN_000513a0(piVar7,local_150,local_150 + local_14c,0)" identifier (argument_list "(piVar7,local_150,local_150 + local_14c,0)" ( identifier , identifier , (binary_expression "local_150 + local_14c" identifier + identifier) , number_literal ))) ;) (expression_statement "*(undefined1 *)(piVar7 + 6) = (undefined1)local_138;" (assignment_expression "*(undefined1 *)(piVar7 + 6) = (undefined1)local_138" (pointer_expression "*(undefined1 *)(piVar7 + 6)" * (cast_expression "(undefined1 *)(piVar7 + 6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7 + 6)" ( (binary_expression "piVar7 + 6" identifier + number_literal) )))) = (cast_expression "(undefined1)local_138" ( (type_descriptor "undefined1" type_identifier) ) identifier)) ;) (expression_statement "*(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;" (assignment_expression "*(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_" (pointer_expression "*(undefined1 *)((int)piVar7 + 0x19)" * (cast_expression "(undefined1 *)((int)piVar7 + 0x19)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar7 + 0x19)" ( (binary_expression "(int)piVar7 + 0x19" (cast_expression "(int)piVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (field_expression "local_138._1_1_" identifier . field_identifier)) ;) (expression_statement "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;" (assignment_expression "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" * (cast_expression "(int *)(param_1 + 0x2188)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) )))) = (binary_expression "*(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" * (cast_expression "(int *)(param_1 + 0x2188)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) )))) + number_literal)) ;) }))) (if_statement "if (local_150 != local_1e0) {\n        FUN_001e6db0(local_150);\n      }" if (parenthesized_expression "(local_150 != local_1e0)" ( (binary_expression "local_150 != local_1e0" identifier != identifier) )) (compound_statement "{\n        FUN_001e6db0(local_150);\n      }" { (expression_statement "FUN_001e6db0(local_150);" (call_expression "FUN_001e6db0(local_150)" identifier (argument_list "(local_150)" ( identifier ))) ;) })) (if_statement "if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }" if (parenthesized_expression "(local_134 != local_1dc)" ( (binary_expression "local_134 != local_1dc" identifier != identifier) )) (compound_statement "{\n        FUN_001e6db0(local_134);\n      }" { (expression_statement "FUN_001e6db0(local_134);" (call_expression "FUN_001e6db0(local_134)" identifier (argument_list "(local_134)" ( identifier ))) ;) })) (goto_statement "goto LAB_000e7f08;" goto statement_identifier ;) })) }) (else_clause "else {\n    pcVar12 = *(char **)(param_1 + 0x4cac);\n    sVar9 = strlen(pcVar12);\n    ppuVar3 = local_1d4;\n                    \n    FUN_001ef9f0(local_1d4,0,0,pcVar12,sVar9);\n    iVar14 = FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6);\n    if (iVar14 == 0) {\n      uVar6 = local_1b8;\n      if (2 < local_1b8) {\n        uVar6 = 2;\n      }\n                    \n      FUN_001eebf0(local_1d4,0,uVar6);\n    }\nLAB_000e7f08:\n    uVar6 = 0;\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n    if (local_1b8 != 0) {\n      do {\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    \n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      } while( true );\n    }\n  }" else (compound_statement "{\n    pcVar12 = *(char **)(param_1 + 0x4cac);\n    sVar9 = strlen(pcVar12);\n    ppuVar3 = local_1d4;\n                    \n    FUN_001ef9f0(local_1d4,0,0,pcVar12,sVar9);\n    iVar14 = FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6);\n    if (iVar14 == 0) {\n      uVar6 = local_1b8;\n      if (2 < local_1b8) {\n        uVar6 = 2;\n      }\n                    \n      FUN_001eebf0(local_1d4,0,uVar6);\n    }\nLAB_000e7f08:\n    uVar6 = 0;\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n    if (local_1b8 != 0) {\n      do {\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    \n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      } while( true );\n    }\n  }" { (expression_statement "pcVar12 = *(char **)(param_1 + 0x4cac);" (assignment_expression "pcVar12 = *(char **)(param_1 + 0x4cac)" identifier = (pointer_expression "*(char **)(param_1 + 0x4cac)" * (cast_expression "(char **)(param_1 + 0x4cac)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x4cac)" ( (binary_expression "param_1 + 0x4cac" identifier + number_literal) ))))) ;) (expression_statement "sVar9 = strlen(pcVar12);" (assignment_expression "sVar9 = strlen(pcVar12)" identifier = (call_expression "strlen(pcVar12)" identifier (argument_list "(pcVar12)" ( identifier )))) ;) (expression_statement "ppuVar3 = local_1d4;" (assignment_expression "ppuVar3 = local_1d4" identifier = identifier) ;) (expression_statement "FUN_001ef9f0(local_1d4,0,0,pcVar12,sVar9);" (call_expression "FUN_001ef9f0(local_1d4,0,0,pcVar12,sVar9)" identifier (argument_list "(local_1d4,0,0,pcVar12,sVar9)" ( identifier , number_literal , number_literal , identifier , identifier ))) ;) (expression_statement "iVar14 = FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6);" (assignment_expression "iVar14 = FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6)" identifier = (call_expression "FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6)" identifier (argument_list "(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6)" ( identifier , number_literal , number_literal , (binary_expression "(int)ppuVar4 + -0x1003c6" (cast_expression "(int)ppuVar4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (if_statement "if (iVar14 == 0) {\n      uVar6 = local_1b8;\n      if (2 < local_1b8) {\n        uVar6 = 2;\n      }\n                    \n      FUN_001eebf0(local_1d4,0,uVar6);\n    }" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (compound_statement "{\n      uVar6 = local_1b8;\n      if (2 < local_1b8) {\n        uVar6 = 2;\n      }\n                    \n      FUN_001eebf0(local_1d4,0,uVar6);\n    }" { (expression_statement "uVar6 = local_1b8;" (assignment_expression "uVar6 = local_1b8" identifier = identifier) ;) (if_statement "if (2 < local_1b8) {\n        uVar6 = 2;\n      }" if (parenthesized_expression "(2 < local_1b8)" ( (binary_expression "2 < local_1b8" number_literal < identifier) )) (compound_statement "{\n        uVar6 = 2;\n      }" { (expression_statement "uVar6 = 2;" (assignment_expression "uVar6 = 2" identifier = number_literal) ;) })) (expression_statement "FUN_001eebf0(local_1d4,0,uVar6);" (call_expression "FUN_001eebf0(local_1d4,0,uVar6)" identifier (argument_list "(local_1d4,0,uVar6)" ( identifier , number_literal , identifier ))) ;) })) (labeled_statement "LAB_000e7f08:\n    uVar6 = 0;" statement_identifier : (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;)) (expression_statement "local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);" (assignment_expression "local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150)" identifier = (cast_expression "(double)CONCAT44(local_1cc._4_4_,&local_150)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(local_1cc._4_4_,&local_150)" identifier (argument_list "(local_1cc._4_4_,&local_150)" ( (field_expression "local_1cc._4_4_" identifier . field_identifier) , (pointer_expression "&local_150" & identifier) ))))) ;) (if_statement "if (local_1b8 != 0) {\n      do {\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    \n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      } while( true );\n    }" if (parenthesized_expression "(local_1b8 != 0)" ( (binary_expression "local_1b8 != 0" identifier != number_literal) )) (compound_statement "{\n      do {\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    \n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      } while( true );\n    }" { (do_statement "do {\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    \n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      } while( true );" do (compound_statement "{\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    \n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      }" { (expression_statement "iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);" (assignment_expression "iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6)" identifier = (call_expression "FUN_001f0c10(local_1d4,0x3a,uVar6)" identifier (argument_list "(local_1d4,0x3a,uVar6)" ( identifier , number_literal , identifier )))) ;) (expression_statement "uVar16 = 0xffffffff;" (assignment_expression "uVar16 = 0xffffffff" identifier = number_literal) ;) (if_statement "if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    \n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }" if (parenthesized_expression "((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0))" ( (binary_expression "(iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)" (parenthesized_expression "(iVar14 == -1)" ( (binary_expression "iVar14 == -1" identifier == number_literal) )) || (parenthesized_expression "(uVar16 = iVar14 - uVar6, uVar16 != 0)" ( (comma_expression "uVar16 = iVar14 - uVar6, uVar16 != 0" (assignment_expression "uVar16 = iVar14 - uVar6" identifier = (binary_expression "iVar14 - uVar6" identifier - identifier)) , (binary_expression "uVar16 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n          if (local_1b8 < uVar6) {\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    \n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }" { (if_statement "if (local_1b8 < uVar6) {\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }" if (parenthesized_expression "(local_1b8 < uVar6)" ( (binary_expression "local_1b8 < uVar6" identifier < identifier) )) (compound_statement "{\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }" { (expression_statement "FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);" (call_expression "FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8)" identifier (argument_list "(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8)" ( (binary_expression "local_1c4 + -0x4104f" identifier + number_literal) , (binary_expression "local_1c4 + -0x400ea" identifier + number_literal) , identifier , identifier ))) ;) })) (expression_statement "local_1e0 = local_148;" (assignment_expression "local_1e0 = local_148" identifier = identifier) ;) (expression_statement "uVar10 = local_1b8 - uVar6;" (assignment_expression "uVar10 = local_1b8 - uVar6" identifier = (binary_expression "local_1b8 - uVar6" identifier - identifier)) ;) (if_statement "if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }" if (parenthesized_expression "(uVar16 < local_1b8 - uVar6)" ( (binary_expression "uVar16 < local_1b8 - uVar6" identifier < (binary_expression "local_1b8 - uVar6" identifier - identifier)) )) (compound_statement "{\n            uVar10 = uVar16;\n          }" { (expression_statement "uVar10 = uVar16;" (assignment_expression "uVar10 = uVar16" identifier = identifier) ;) })) (expression_statement "local_150 = local_1e0;" (assignment_expression "local_150 = local_1e0" identifier = identifier) ;) (expression_statement "FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);" (call_expression "FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0)" identifier (argument_list "(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0)" ( (field_expression "local_1cc._0_4_" identifier . field_identifier) , (binary_expression "local_1bc + uVar6" identifier + identifier) , (binary_expression "local_1bc + uVar6 + uVar10" (binary_expression "local_1bc + uVar6" identifier + identifier) + identifier) , number_literal ))) ;) (expression_statement "local_1dc = local_12c;" (assignment_expression "local_1dc = local_12c" identifier = identifier) ;) (expression_statement "local_1d0 = (undefined ***)&local_134;" (assignment_expression "local_1d0 = (undefined ***)&local_134" identifier = (cast_expression "(undefined ***)&local_134" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (pointer_expression "&local_134" & identifier))) ;) (expression_statement "local_134 = local_1dc;" (assignment_expression "local_134 = local_1dc" identifier = identifier) ;) (expression_statement "FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);" (call_expression "FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0)" identifier (argument_list "(local_1d0,local_150,local_150 + local_14c,0)" ( identifier , identifier , (binary_expression "local_150 + local_14c" identifier + identifier) , number_literal ))) ;) (expression_statement "local_11c = 1;" (assignment_expression "local_11c = 1" identifier = number_literal) ;) (if_statement "if (local_130 == 0) {\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }" if (parenthesized_expression "(local_130 == 0)" ( (binary_expression "local_130 == 0" identifier == number_literal) )) (compound_statement "{\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }" { (expression_statement "FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);" (call_expression "FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1)" identifier (argument_list "(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1)" ( identifier , number_literal , number_literal , (binary_expression "(int)local_1c4 + -0x1013b5" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) , number_literal ))) ;) })) (expression_statement "piVar7 = *(int **)(param_1 + 0x2188);" (assignment_expression "piVar7 = *(int **)(param_1 + 0x2188)" identifier = (pointer_expression "*(int **)(param_1 + 0x2188)" * (cast_expression "(int **)(param_1 + 0x2188)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) ))))) ;) (if_statement "if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }" if (parenthesized_expression "(piVar7 == *(int **)(param_1 + 0x218c))" ( (binary_expression "piVar7 == *(int **)(param_1 + 0x218c)" identifier == (pointer_expression "*(int **)(param_1 + 0x218c)" * (cast_expression "(int **)(param_1 + 0x218c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x218c)" ( (binary_expression "param_1 + 0x218c" identifier + number_literal) ))))) )) (compound_statement "{\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }" { (expression_statement "FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);" (call_expression "FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0)" identifier (argument_list "(param_1 + 0x2184,piVar7,local_1d0)" ( (binary_expression "param_1 + 0x2184" identifier + number_literal) , identifier , identifier ))) ;) }) (else_clause "else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }" else (compound_statement "{\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }" { (expression_statement "*piVar7 = (int)(piVar7 + 2);" (assignment_expression "*piVar7 = (int)(piVar7 + 2)" (pointer_expression "*piVar7" * identifier) = (cast_expression "(int)(piVar7 + 2)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar7 + 2)" ( (binary_expression "piVar7 + 2" identifier + number_literal) )))) ;) (expression_statement "FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);" (call_expression "FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0)" identifier (argument_list "(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0)" ( identifier , identifier , (cast_expression "(undefined *)(local_130 + (int)local_134)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_130 + (int)local_134)" ( (binary_expression "local_130 + (int)local_134" identifier + (cast_expression "(int)local_134" ( (type_descriptor "int" primitive_type) ) identifier)) ))) , number_literal ))) ;) (expression_statement "*(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;" (assignment_expression "*(undefined1 *)(piVar7 + 6) = (undefined1)local_11c" (pointer_expression "*(undefined1 *)(piVar7 + 6)" * (cast_expression "(undefined1 *)(piVar7 + 6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7 + 6)" ( (binary_expression "piVar7 + 6" identifier + number_literal) )))) = (cast_expression "(undefined1)local_11c" ( (type_descriptor "undefined1" type_identifier) ) identifier)) ;) (expression_statement "*(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;" (assignment_expression "*(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_" (pointer_expression "*(undefined1 *)((int)piVar7 + 0x19)" * (cast_expression "(undefined1 *)((int)piVar7 + 0x19)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar7 + 0x19)" ( (binary_expression "(int)piVar7 + 0x19" (cast_expression "(int)piVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (field_expression "local_11c._1_1_" identifier . field_identifier)) ;) (expression_statement "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;" (assignment_expression "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" * (cast_expression "(int *)(param_1 + 0x2188)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) )))) = (binary_expression "*(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" * (cast_expression "(int *)(param_1 + 0x2188)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2188)" ( (binary_expression "param_1 + 0x2188" identifier + number_literal) )))) + number_literal)) ;) }))) (if_statement "if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }" if (parenthesized_expression "(local_134 != local_1dc)" ( (binary_expression "local_134 != local_1dc" identifier != identifier) )) (compound_statement "{\n            FUN_001e6db0(local_134);\n          }" { (expression_statement "FUN_001e6db0(local_134);" (call_expression "FUN_001e6db0(local_134)" identifier (argument_list "(local_134)" ( identifier ))) ;) })) (if_statement "if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }" if (parenthesized_expression "(local_150 != local_1e0)" ( (binary_expression "local_150 != local_1e0" identifier != identifier) )) (compound_statement "{\n            FUN_001e6db0(local_150);\n          }" { (expression_statement "FUN_001e6db0(local_150);" (call_expression "FUN_001e6db0(local_150)" identifier (argument_list "(local_150)" ( identifier ))) ;) })) (if_statement "if (iVar14 == -1) break;" if (parenthesized_expression "(iVar14 == -1)" ( (binary_expression "iVar14 == -1" identifier == number_literal) )) (break_statement "break;" break ;)) })) (expression_statement "uVar6 = iVar14 + 1;" (assignment_expression "uVar6 = iVar14 + 1" identifier = (binary_expression "iVar14 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "( true )" ( true )) ;) })) }))) (expression_statement "ppuVar4 = local_1c4;" (assignment_expression "ppuVar4 = local_1c4" identifier = identifier) ;) (expression_statement "puVar17 = auStack_20c;" (assignment_expression "puVar17 = auStack_20c" identifier = identifier) ;) (expression_statement "puVar18 = auStack_20c;" (assignment_expression "puVar18 = auStack_20c" identifier = identifier) ;) (if_statement "if (*(int *)(param_1 + 0x3288) != 0) {\n    local_1e8 = local_a4;\n    local_1d0 = (undefined ***)&local_134;\n    FUN_0022bca0(local_1e8);\n    local_1fc = ppuVar4 + -0xa14;\n    local_34 = 0;\n    local_2c = 0;\n    local_a4[0] = ppuVar4 + -0xa12;\n    local_30 = 0;\n    local_28 = 0;\n    local_1f4 = (undefined ***)ppuVar4[-0x9d9];\n    local_1f8 = ppuVar4[-0x9d8];\n    local_24 = 0;\n    local_20 = 0;\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n                    \n    FUN_00211450((int)local_1f4[-3] + (int)&local_134,0);\n    local_200 = ppuVar4 + -0x9d6;\n    local_134 = (undefined ***)(ppuVar4 + -0x9d3);\n    local_a4[0] = ppuVar4 + -0x9ce;\n    local_1dc = local_12c;\n                    \n    FUN_00213670(local_12c);\n                    \n    FUN_00211450(local_1e8,local_12c);\n                    \n    iVar14 = FUN_00217950(local_12c,*(undefined4 *)(param_1 + 0x3288),8);\n    puVar15 = (undefined *)((int)local_1d0 + (int)local_134[-3]);\n    if (iVar14 == 0) {\n                    \n      FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4);\n    }\n    else {\n      FUN_00210c00(puVar15,0);\n    }\n    ppuVar4 = local_1c4;\n    if ((local_90 & 5) != 0) {\n      piVar7 = __errno_location();\n      pcVar12 = strerror(*piVar7);\n      uVar11 = *(undefined4 *)(param_1 + 0x3288);\n      uVar13 = gettext(local_1c4 + -0x3f6cb);\n                    \n                    \n      FUN_00065450(uVar13,uVar11,pcVar12);\n    }\n    local_1e0 = local_148;\n    local_148[0] = 0;\n    local_14c = 0;\n    piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n    local_150 = local_1e0;\n    if (piVar7 == (int *)0x0) {\n                    \n                    \n      FUN_0022c630();\n    }\n    if ((char)piVar7[7] == '\0') {\n                    \n      FUN_0022ccc0(piVar7);\n      iVar14 = 10;\n      if (*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0) {\n        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);\n        iVar14 = (int)cVar5;\n      }\n    }\n    else {\n      iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n    }\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n                    \n    FUN_001e7cb0(local_1d0,&local_150,iVar14);\n    local_1d4 = (undefined1 **)(param_1 + 0x5a3c);\n    local_1e4 = local_1c0;\n    while ((local_90 & 5) == 0) {\n      if ((local_14c != 0) && (local_150[local_14c + -1] == '\r')) {\n        *(undefined4 *)(puVar17 + -8) = 0;\n        *(int *)(puVar17 + -0xc) = local_14c + -1;\n        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;\n        FUN_001ef780();\n      }\n      *(undefined4 *)(puVar17 + -8) = 0xc70f6907;\n      *(int *)(puVar17 + -0xc) = local_14c;\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe793a;\n      uVar6 = FUN_001e52b0();\n      local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40);\n      *(uint *)(puVar17 + -0x14) = uVar6;\n      *(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_;\n      *(uint *)(puVar17 + -0x1c) = local_1d8;\n      *(undefined1 ***)(puVar17 + -0x20) = local_1d4;\n      *(undefined4 *)(puVar17 + -0x24) = 0xe7960;\n      piVar7 = (int *)FUN_000eadf0();\n      if ((piVar7 == (int *)0x0) || (*piVar7 == 0)) {\n        *(undefined4 *)(puVar17 + -0x10) = 0x20;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;\n        puVar8 = (undefined4 *)FUN_001e5200();\n        *puVar8 = 0;\n        puVar8[1] = puVar8 + 3;\n        *(undefined4 *)(puVar17 + -4) = 0;\n        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;\n        *(undefined1 **)(puVar17 + -0xc) = local_150;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;\n        FUN_000513a0();\n        *(undefined4 *)(puVar17 + -0xc) = 1;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8;\n        *(uint *)(puVar17 + -0x14) = uVar6;\n        *(uint *)(puVar17 + -0x18) = local_1d8;\n        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;\n        *(undefined1 **)(puVar17 + -0x20) = local_1e4;\n                    \n        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;\n        FUN_000ec3b0();\n        puVar17 = puVar17 + -4;\n      }\n      ppuVar4 = local_1c4;\n      piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n      if (piVar7 == (int *)0x0) {\n                    \n                    \n        *(undefined4 *)(puVar17 + -4) = 0xe88af;\n        FUN_0022c630();\n      }\n      if ((char)piVar7[7] == '\0') {\n        *(int **)(puVar17 + -0x10) = piVar7;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;\n        FUN_0022ccc0();\n        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);\n        iVar14 = 10;\n        if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }\n      }\n      else {\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }\n      *(int *)(puVar17 + -8) = iVar14;\n      *(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_;\n      *(undefined ****)(puVar17 + -0x10) = local_1d0;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe78f7;\n      FUN_001e7cb0();\n    }\n    if (local_150 != local_1e0) {\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe7aef;\n      FUN_001e6db0();\n    }\n    ppuVar4 = local_1c4;\n    *(undefined ****)(puVar17 + -0x10) = local_1dc;\n    local_134 = (undefined ***)(local_200 + 3);\n    local_a4[0] = local_200 + 8;\n    local_12c[0] = local_1c4 + -0x9f2;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b2f;\n    FUN_00216e90();\n    *(undefined1 **)(puVar17 + -0x10) = local_f4;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b3d;\n    FUN_001e75f0();\n    local_12c[0] = ppuVar4 + -0xbd7;\n    *(undefined1 **)(puVar17 + -0x10) = local_110;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b5a;\n    FUN_001e9510();\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n    local_a4[0] = local_1fc + 2;\n    *(undefined ****)(puVar17 + -0x10) = local_1e8;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b9b;\n    FUN_0022c040();\n    puVar18 = puVar17;\n  }" if (parenthesized_expression "(*(int *)(param_1 + 0x3288) != 0)" ( (binary_expression "*(int *)(param_1 + 0x3288) != 0" (pointer_expression "*(int *)(param_1 + 0x3288)" * (cast_expression "(int *)(param_1 + 0x3288)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3288)" ( (binary_expression "param_1 + 0x3288" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    local_1e8 = local_a4;\n    local_1d0 = (undefined ***)&local_134;\n    FUN_0022bca0(local_1e8);\n    local_1fc = ppuVar4 + -0xa14;\n    local_34 = 0;\n    local_2c = 0;\n    local_a4[0] = ppuVar4 + -0xa12;\n    local_30 = 0;\n    local_28 = 0;\n    local_1f4 = (undefined ***)ppuVar4[-0x9d9];\n    local_1f8 = ppuVar4[-0x9d8];\n    local_24 = 0;\n    local_20 = 0;\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n                    \n    FUN_00211450((int)local_1f4[-3] + (int)&local_134,0);\n    local_200 = ppuVar4 + -0x9d6;\n    local_134 = (undefined ***)(ppuVar4 + -0x9d3);\n    local_a4[0] = ppuVar4 + -0x9ce;\n    local_1dc = local_12c;\n                    \n    FUN_00213670(local_12c);\n                    \n    FUN_00211450(local_1e8,local_12c);\n                    \n    iVar14 = FUN_00217950(local_12c,*(undefined4 *)(param_1 + 0x3288),8);\n    puVar15 = (undefined *)((int)local_1d0 + (int)local_134[-3]);\n    if (iVar14 == 0) {\n                    \n      FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4);\n    }\n    else {\n      FUN_00210c00(puVar15,0);\n    }\n    ppuVar4 = local_1c4;\n    if ((local_90 & 5) != 0) {\n      piVar7 = __errno_location();\n      pcVar12 = strerror(*piVar7);\n      uVar11 = *(undefined4 *)(param_1 + 0x3288);\n      uVar13 = gettext(local_1c4 + -0x3f6cb);\n                    \n                    \n      FUN_00065450(uVar13,uVar11,pcVar12);\n    }\n    local_1e0 = local_148;\n    local_148[0] = 0;\n    local_14c = 0;\n    piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n    local_150 = local_1e0;\n    if (piVar7 == (int *)0x0) {\n                    \n                    \n      FUN_0022c630();\n    }\n    if ((char)piVar7[7] == '\0') {\n                    \n      FUN_0022ccc0(piVar7);\n      iVar14 = 10;\n      if (*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0) {\n        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);\n        iVar14 = (int)cVar5;\n      }\n    }\n    else {\n      iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n    }\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n                    \n    FUN_001e7cb0(local_1d0,&local_150,iVar14);\n    local_1d4 = (undefined1 **)(param_1 + 0x5a3c);\n    local_1e4 = local_1c0;\n    while ((local_90 & 5) == 0) {\n      if ((local_14c != 0) && (local_150[local_14c + -1] == '\r')) {\n        *(undefined4 *)(puVar17 + -8) = 0;\n        *(int *)(puVar17 + -0xc) = local_14c + -1;\n        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;\n        FUN_001ef780();\n      }\n      *(undefined4 *)(puVar17 + -8) = 0xc70f6907;\n      *(int *)(puVar17 + -0xc) = local_14c;\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe793a;\n      uVar6 = FUN_001e52b0();\n      local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40);\n      *(uint *)(puVar17 + -0x14) = uVar6;\n      *(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_;\n      *(uint *)(puVar17 + -0x1c) = local_1d8;\n      *(undefined1 ***)(puVar17 + -0x20) = local_1d4;\n      *(undefined4 *)(puVar17 + -0x24) = 0xe7960;\n      piVar7 = (int *)FUN_000eadf0();\n      if ((piVar7 == (int *)0x0) || (*piVar7 == 0)) {\n        *(undefined4 *)(puVar17 + -0x10) = 0x20;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;\n        puVar8 = (undefined4 *)FUN_001e5200();\n        *puVar8 = 0;\n        puVar8[1] = puVar8 + 3;\n        *(undefined4 *)(puVar17 + -4) = 0;\n        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;\n        *(undefined1 **)(puVar17 + -0xc) = local_150;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;\n        FUN_000513a0();\n        *(undefined4 *)(puVar17 + -0xc) = 1;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8;\n        *(uint *)(puVar17 + -0x14) = uVar6;\n        *(uint *)(puVar17 + -0x18) = local_1d8;\n        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;\n        *(undefined1 **)(puVar17 + -0x20) = local_1e4;\n                    \n        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;\n        FUN_000ec3b0();\n        puVar17 = puVar17 + -4;\n      }\n      ppuVar4 = local_1c4;\n      piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n      if (piVar7 == (int *)0x0) {\n                    \n                    \n        *(undefined4 *)(puVar17 + -4) = 0xe88af;\n        FUN_0022c630();\n      }\n      if ((char)piVar7[7] == '\0') {\n        *(int **)(puVar17 + -0x10) = piVar7;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;\n        FUN_0022ccc0();\n        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);\n        iVar14 = 10;\n        if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }\n      }\n      else {\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }\n      *(int *)(puVar17 + -8) = iVar14;\n      *(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_;\n      *(undefined ****)(puVar17 + -0x10) = local_1d0;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe78f7;\n      FUN_001e7cb0();\n    }\n    if (local_150 != local_1e0) {\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe7aef;\n      FUN_001e6db0();\n    }\n    ppuVar4 = local_1c4;\n    *(undefined ****)(puVar17 + -0x10) = local_1dc;\n    local_134 = (undefined ***)(local_200 + 3);\n    local_a4[0] = local_200 + 8;\n    local_12c[0] = local_1c4 + -0x9f2;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b2f;\n    FUN_00216e90();\n    *(undefined1 **)(puVar17 + -0x10) = local_f4;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b3d;\n    FUN_001e75f0();\n    local_12c[0] = ppuVar4 + -0xbd7;\n    *(undefined1 **)(puVar17 + -0x10) = local_110;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b5a;\n    FUN_001e9510();\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n    local_a4[0] = local_1fc + 2;\n    *(undefined ****)(puVar17 + -0x10) = local_1e8;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b9b;\n    FUN_0022c040();\n    puVar18 = puVar17;\n  }" { (expression_statement "local_1e8 = local_a4;" (assignment_expression "local_1e8 = local_a4" identifier = identifier) ;) (expression_statement "local_1d0 = (undefined ***)&local_134;" (assignment_expression "local_1d0 = (undefined ***)&local_134" identifier = (cast_expression "(undefined ***)&local_134" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (pointer_expression "&local_134" & identifier))) ;) (expression_statement "FUN_0022bca0(local_1e8);" (call_expression "FUN_0022bca0(local_1e8)" identifier (argument_list "(local_1e8)" ( identifier ))) ;) (expression_statement "local_1fc = ppuVar4 + -0xa14;" (assignment_expression "local_1fc = ppuVar4 + -0xa14" identifier = (binary_expression "ppuVar4 + -0xa14" identifier + number_literal)) ;) (expression_statement "local_34 = 0;" (assignment_expression "local_34 = 0" identifier = number_literal) ;) (expression_statement "local_2c = 0;" (assignment_expression "local_2c = 0" identifier = number_literal) ;) (expression_statement "local_a4[0] = ppuVar4 + -0xa12;" (assignment_expression "local_a4[0] = ppuVar4 + -0xa12" (subscript_expression "local_a4[0]" identifier [ number_literal ]) = (binary_expression "ppuVar4 + -0xa12" identifier + number_literal)) ;) (expression_statement "local_30 = 0;" (assignment_expression "local_30 = 0" identifier = number_literal) ;) (expression_statement "local_28 = 0;" (assignment_expression "local_28 = 0" identifier = number_literal) ;) (expression_statement "local_1f4 = (undefined ***)ppuVar4[-0x9d9];" (assignment_expression "local_1f4 = (undefined ***)ppuVar4[-0x9d9]" identifier = (cast_expression "(undefined ***)ppuVar4[-0x9d9]" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (subscript_expression "ppuVar4[-0x9d9]" identifier [ number_literal ]))) ;) (expression_statement "local_1f8 = ppuVar4[-0x9d8];" (assignment_expression "local_1f8 = ppuVar4[-0x9d8]" identifier = (subscript_expression "ppuVar4[-0x9d8]" identifier [ number_literal ])) ;) (expression_statement "local_24 = 0;" (assignment_expression "local_24 = 0" identifier = number_literal) ;) (expression_statement "local_20 = 0;" (assignment_expression "local_20 = 0" identifier = number_literal) ;) (expression_statement "local_134 = local_1f4;" (assignment_expression "local_134 = local_1f4" identifier = identifier) ;) (expression_statement "*(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;" (assignment_expression "*(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8" (pointer_expression "*(undefined **)((int)&local_134 + (int)local_1f4[-3])" * (cast_expression "(undefined **)((int)&local_134 + (int)local_1f4[-3])" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&local_134 + (int)local_1f4[-3])" ( (binary_expression "(int)&local_134 + (int)local_1f4[-3]" (cast_expression "(int)&local_134" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_134" & identifier)) + (cast_expression "(int)local_1f4[-3]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "local_1f4[-3]" identifier [ number_literal ]))) )))) = identifier) ;) (expression_statement "local_130 = 0;" (assignment_expression "local_130 = 0" identifier = number_literal) ;) (expression_statement "FUN_00211450((int)local_1f4[-3] + (int)&local_134,0);" (call_expression "FUN_00211450((int)local_1f4[-3] + (int)&local_134,0)" identifier (argument_list "((int)local_1f4[-3] + (int)&local_134,0)" ( (binary_expression "(int)local_1f4[-3] + (int)&local_134" (cast_expression "(int)local_1f4[-3]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "local_1f4[-3]" identifier [ number_literal ])) + (cast_expression "(int)&local_134" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_134" & identifier))) , number_literal ))) ;) (expression_statement "local_200 = ppuVar4 + -0x9d6;" (assignment_expression "local_200 = ppuVar4 + -0x9d6" identifier = (binary_expression "ppuVar4 + -0x9d6" identifier + number_literal)) ;) (expression_statement "local_134 = (undefined ***)(ppuVar4 + -0x9d3);" (assignment_expression "local_134 = (undefined ***)(ppuVar4 + -0x9d3)" identifier = (cast_expression "(undefined ***)(ppuVar4 + -0x9d3)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(ppuVar4 + -0x9d3)" ( (binary_expression "ppuVar4 + -0x9d3" identifier + number_literal) )))) ;) (expression_statement "local_a4[0] = ppuVar4 + -0x9ce;" (assignment_expression "local_a4[0] = ppuVar4 + -0x9ce" (subscript_expression "local_a4[0]" identifier [ number_literal ]) = (binary_expression "ppuVar4 + -0x9ce" identifier + number_literal)) ;) (expression_statement "local_1dc = local_12c;" (assignment_expression "local_1dc = local_12c" identifier = identifier) ;) (expression_statement "FUN_00213670(local_12c);" (call_expression "FUN_00213670(local_12c)" identifier (argument_list "(local_12c)" ( identifier ))) ;) (expression_statement "FUN_00211450(local_1e8,local_12c);" (call_expression "FUN_00211450(local_1e8,local_12c)" identifier (argument_list "(local_1e8,local_12c)" ( identifier , identifier ))) ;) (expression_statement "iVar14 = FUN_00217950(local_12c,*(undefined4 *)(param_1 + 0x3288),8);" (assignment_expression "iVar14 = FUN_00217950(local_12c,*(undefined4 *)(param_1 + 0x3288),8)" identifier = (call_expression "FUN_00217950(local_12c,*(undefined4 *)(param_1 + 0x3288),8)" identifier (argument_list "(local_12c,*(undefined4 *)(param_1 + 0x3288),8)" ( identifier , (pointer_expression "*(undefined4 *)(param_1 + 0x3288)" * (cast_expression "(undefined4 *)(param_1 + 0x3288)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3288)" ( (binary_expression "param_1 + 0x3288" identifier + number_literal) )))) , number_literal )))) ;) (expression_statement "puVar15 = (undefined *)((int)local_1d0 + (int)local_134[-3]);" (assignment_expression "puVar15 = (undefined *)((int)local_1d0 + (int)local_134[-3])" identifier = (cast_expression "(undefined *)((int)local_1d0 + (int)local_134[-3])" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_1d0 + (int)local_134[-3])" ( (binary_expression "(int)local_1d0 + (int)local_134[-3]" (cast_expression "(int)local_1d0" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_134[-3]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "local_134[-3]" identifier [ number_literal ]))) )))) ;) (if_statement "if (iVar14 == 0) {\n                    \n      FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4);\n    }\n    else {\n      FUN_00210c00(puVar15,0);\n    }" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (compound_statement "{\n                    \n      FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4);\n    }" { (expression_statement "FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4);" (call_expression "FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4)" identifier (argument_list "(puVar15,*(uint *)(puVar15 + 0x14) | 4)" ( identifier , (binary_expression "*(uint *)(puVar15 + 0x14) | 4" (pointer_expression "*(uint *)(puVar15 + 0x14)" * (cast_expression "(uint *)(puVar15 + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + 0x14)" ( (binary_expression "puVar15 + 0x14" identifier + number_literal) )))) | number_literal) ))) ;) }) (else_clause "else {\n      FUN_00210c00(puVar15,0);\n    }" else (compound_statement "{\n      FUN_00210c00(puVar15,0);\n    }" { (expression_statement "FUN_00210c00(puVar15,0);" (call_expression "FUN_00210c00(puVar15,0)" identifier (argument_list "(puVar15,0)" ( identifier , number_literal ))) ;) }))) (expression_statement "ppuVar4 = local_1c4;" (assignment_expression "ppuVar4 = local_1c4" identifier = identifier) ;) (if_statement "if ((local_90 & 5) != 0) {\n      piVar7 = __errno_location();\n      pcVar12 = strerror(*piVar7);\n      uVar11 = *(undefined4 *)(param_1 + 0x3288);\n      uVar13 = gettext(local_1c4 + -0x3f6cb);\n                    \n                    \n      FUN_00065450(uVar13,uVar11,pcVar12);\n    }" if (parenthesized_expression "((local_90 & 5) != 0)" ( (binary_expression "(local_90 & 5) != 0" (parenthesized_expression "(local_90 & 5)" ( (binary_expression "local_90 & 5" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      piVar7 = __errno_location();\n      pcVar12 = strerror(*piVar7);\n      uVar11 = *(undefined4 *)(param_1 + 0x3288);\n      uVar13 = gettext(local_1c4 + -0x3f6cb);\n                    \n                    \n      FUN_00065450(uVar13,uVar11,pcVar12);\n    }" { (expression_statement "piVar7 = __errno_location();" (assignment_expression "piVar7 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "pcVar12 = strerror(*piVar7);" (assignment_expression "pcVar12 = strerror(*piVar7)" identifier = (call_expression "strerror(*piVar7)" identifier (argument_list "(*piVar7)" ( (pointer_expression "*piVar7" * identifier) )))) ;) (expression_statement "uVar11 = *(undefined4 *)(param_1 + 0x3288);" (assignment_expression "uVar11 = *(undefined4 *)(param_1 + 0x3288)" identifier = (pointer_expression "*(undefined4 *)(param_1 + 0x3288)" * (cast_expression "(undefined4 *)(param_1 + 0x3288)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3288)" ( (binary_expression "param_1 + 0x3288" identifier + number_literal) ))))) ;) (expression_statement "uVar13 = gettext(local_1c4 + -0x3f6cb);" (assignment_expression "uVar13 = gettext(local_1c4 + -0x3f6cb)" identifier = (call_expression "gettext(local_1c4 + -0x3f6cb)" identifier (argument_list "(local_1c4 + -0x3f6cb)" ( (binary_expression "local_1c4 + -0x3f6cb" identifier + number_literal) )))) ;) (expression_statement "FUN_00065450(uVar13,uVar11,pcVar12);" (call_expression "FUN_00065450(uVar13,uVar11,pcVar12)" identifier (argument_list "(uVar13,uVar11,pcVar12)" ( identifier , identifier , identifier ))) ;) })) (expression_statement "local_1e0 = local_148;" (assignment_expression "local_1e0 = local_148" identifier = identifier) ;) (expression_statement "local_148[0] = 0;" (assignment_expression "local_148[0] = 0" (subscript_expression "local_148[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "local_14c = 0;" (assignment_expression "local_14c = 0" identifier = number_literal) ;) (expression_statement "piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);" (assignment_expression "piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3])" identifier = (pointer_expression "*(int **)((int)aiStack_b8 + (int)local_134[-3])" * (cast_expression "(int **)((int)aiStack_b8 + (int)local_134[-3])" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)aiStack_b8 + (int)local_134[-3])" ( (binary_expression "(int)aiStack_b8 + (int)local_134[-3]" (cast_expression "(int)aiStack_b8" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_134[-3]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "local_134[-3]" identifier [ number_literal ]))) ))))) ;) (expression_statement "local_150 = local_1e0;" (assignment_expression "local_150 = local_1e0" identifier = identifier) ;) (if_statement "if (piVar7 == (int *)0x0) {\n                    \n                    \n      FUN_0022c630();\n    }" if (parenthesized_expression "(piVar7 == (int *)0x0)" ( (binary_expression "piVar7 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    \n                    \n      FUN_0022c630();\n    }" { (expression_statement "FUN_0022c630();" (call_expression "FUN_0022c630()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if ((char)piVar7[7] == '\0') {\n                    \n      FUN_0022ccc0(piVar7);\n      iVar14 = 10;\n      if (*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0) {\n        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);\n        iVar14 = (int)cVar5;\n      }\n    }\n    else {\n      iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n    }" if (parenthesized_expression "((char)piVar7[7] == '\0')" ( (binary_expression "(char)piVar7[7] == '\0'" (cast_expression "(char)piVar7[7]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "piVar7[7]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    \n      FUN_0022ccc0(piVar7);\n      iVar14 = 10;\n      if (*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0) {\n        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);\n        iVar14 = (int)cVar5;\n      }\n    }" { (expression_statement "FUN_0022ccc0(piVar7);" (call_expression "FUN_0022ccc0(piVar7)" identifier (argument_list "(piVar7)" ( identifier ))) ;) (expression_statement "iVar14 = 10;" (assignment_expression "iVar14 = 10" identifier = number_literal) ;) (if_statement "if (*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0) {\n        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);\n        iVar14 = (int)cVar5;\n      }" if (parenthesized_expression "(*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0)" ( (binary_expression "*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0" (pointer_expression "*(undefined ***)(*piVar7 + 0x18)" * (cast_expression "(undefined ***)(*piVar7 + 0x18)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(*piVar7 + 0x18)" ( (binary_expression "*piVar7 + 0x18" (pointer_expression "*piVar7" * identifier) + number_literal) )))) != (binary_expression "ppuVar4 + -0xba9e0" identifier + number_literal)) )) (compound_statement "{\n        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);\n        iVar14 = (int)cVar5;\n      }" { (expression_statement "cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);" (assignment_expression "cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10)" identifier = (call_expression "(*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10)" (parenthesized_expression "(*(code *)*(undefined ***)(*piVar7 + 0x18))" ( (pointer_expression "*(code *)*(undefined ***)(*piVar7 + 0x18)" * (cast_expression "(code *)*(undefined ***)(*piVar7 + 0x18)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*(undefined ***)(*piVar7 + 0x18)" * (cast_expression "(undefined ***)(*piVar7 + 0x18)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(*piVar7 + 0x18)" ( (binary_expression "*piVar7 + 0x18" (pointer_expression "*piVar7" * identifier) + number_literal) )))))) )) (argument_list "(piVar7,10)" ( identifier , number_literal )))) ;) (expression_statement "iVar14 = (int)cVar5;" (assignment_expression "iVar14 = (int)cVar5" identifier = (cast_expression "(int)cVar5" ( (type_descriptor "int" primitive_type) ) identifier)) ;) })) }) (else_clause "else {\n      iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n    }" else (compound_statement "{\n      iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n    }" { (expression_statement "iVar14 = (int)*(char *)((int)piVar7 + 0x27);" (assignment_expression "iVar14 = (int)*(char *)((int)piVar7 + 0x27)" identifier = (cast_expression "(int)*(char *)((int)piVar7 + 0x27)" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*(char *)((int)piVar7 + 0x27)" * (cast_expression "(char *)((int)piVar7 + 0x27)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar7 + 0x27)" ( (binary_expression "(int)piVar7 + 0x27" (cast_expression "(int)piVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))))) ;) }))) (expression_statement "local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);" (assignment_expression "local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150)" identifier = (cast_expression "(double)CONCAT44(local_1cc._4_4_,&local_150)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(local_1cc._4_4_,&local_150)" identifier (argument_list "(local_1cc._4_4_,&local_150)" ( (field_expression "local_1cc._4_4_" identifier . field_identifier) , (pointer_expression "&local_150" & identifier) ))))) ;) (expression_statement "FUN_001e7cb0(local_1d0,&local_150,iVar14);" (call_expression "FUN_001e7cb0(local_1d0,&local_150,iVar14)" identifier (argument_list "(local_1d0,&local_150,iVar14)" ( identifier , (pointer_expression "&local_150" & identifier) , identifier ))) ;) (expression_statement "local_1d4 = (undefined1 **)(param_1 + 0x5a3c);" (assignment_expression "local_1d4 = (undefined1 **)(param_1 + 0x5a3c)" identifier = (cast_expression "(undefined1 **)(param_1 + 0x5a3c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x5a3c)" ( (binary_expression "param_1 + 0x5a3c" identifier + number_literal) )))) ;) (expression_statement "local_1e4 = local_1c0;" (assignment_expression "local_1e4 = local_1c0" identifier = identifier) ;) (while_statement "while ((local_90 & 5) == 0) {\n      if ((local_14c != 0) && (local_150[local_14c + -1] == '\r')) {\n        *(undefined4 *)(puVar17 + -8) = 0;\n        *(int *)(puVar17 + -0xc) = local_14c + -1;\n        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;\n        FUN_001ef780();\n      }\n      *(undefined4 *)(puVar17 + -8) = 0xc70f6907;\n      *(int *)(puVar17 + -0xc) = local_14c;\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe793a;\n      uVar6 = FUN_001e52b0();\n      local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40);\n      *(uint *)(puVar17 + -0x14) = uVar6;\n      *(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_;\n      *(uint *)(puVar17 + -0x1c) = local_1d8;\n      *(undefined1 ***)(puVar17 + -0x20) = local_1d4;\n      *(undefined4 *)(puVar17 + -0x24) = 0xe7960;\n      piVar7 = (int *)FUN_000eadf0();\n      if ((piVar7 == (int *)0x0) || (*piVar7 == 0)) {\n        *(undefined4 *)(puVar17 + -0x10) = 0x20;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;\n        puVar8 = (undefined4 *)FUN_001e5200();\n        *puVar8 = 0;\n        puVar8[1] = puVar8 + 3;\n        *(undefined4 *)(puVar17 + -4) = 0;\n        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;\n        *(undefined1 **)(puVar17 + -0xc) = local_150;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;\n        FUN_000513a0();\n        *(undefined4 *)(puVar17 + -0xc) = 1;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8;\n        *(uint *)(puVar17 + -0x14) = uVar6;\n        *(uint *)(puVar17 + -0x18) = local_1d8;\n        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;\n        *(undefined1 **)(puVar17 + -0x20) = local_1e4;\n                    \n        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;\n        FUN_000ec3b0();\n        puVar17 = puVar17 + -4;\n      }\n      ppuVar4 = local_1c4;\n      piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n      if (piVar7 == (int *)0x0) {\n                    \n                    \n        *(undefined4 *)(puVar17 + -4) = 0xe88af;\n        FUN_0022c630();\n      }\n      if ((char)piVar7[7] == '\0') {\n        *(int **)(puVar17 + -0x10) = piVar7;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;\n        FUN_0022ccc0();\n        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);\n        iVar14 = 10;\n        if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }\n      }\n      else {\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }\n      *(int *)(puVar17 + -8) = iVar14;\n      *(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_;\n      *(undefined ****)(puVar17 + -0x10) = local_1d0;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe78f7;\n      FUN_001e7cb0();\n    }" while (parenthesized_expression "((local_90 & 5) == 0)" ( (binary_expression "(local_90 & 5) == 0" (parenthesized_expression "(local_90 & 5)" ( (binary_expression "local_90 & 5" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n      if ((local_14c != 0) && (local_150[local_14c + -1] == '\r')) {\n        *(undefined4 *)(puVar17 + -8) = 0;\n        *(int *)(puVar17 + -0xc) = local_14c + -1;\n        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;\n        FUN_001ef780();\n      }\n      *(undefined4 *)(puVar17 + -8) = 0xc70f6907;\n      *(int *)(puVar17 + -0xc) = local_14c;\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe793a;\n      uVar6 = FUN_001e52b0();\n      local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40);\n      *(uint *)(puVar17 + -0x14) = uVar6;\n      *(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_;\n      *(uint *)(puVar17 + -0x1c) = local_1d8;\n      *(undefined1 ***)(puVar17 + -0x20) = local_1d4;\n      *(undefined4 *)(puVar17 + -0x24) = 0xe7960;\n      piVar7 = (int *)FUN_000eadf0();\n      if ((piVar7 == (int *)0x0) || (*piVar7 == 0)) {\n        *(undefined4 *)(puVar17 + -0x10) = 0x20;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;\n        puVar8 = (undefined4 *)FUN_001e5200();\n        *puVar8 = 0;\n        puVar8[1] = puVar8 + 3;\n        *(undefined4 *)(puVar17 + -4) = 0;\n        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;\n        *(undefined1 **)(puVar17 + -0xc) = local_150;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;\n        FUN_000513a0();\n        *(undefined4 *)(puVar17 + -0xc) = 1;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8;\n        *(uint *)(puVar17 + -0x14) = uVar6;\n        *(uint *)(puVar17 + -0x18) = local_1d8;\n        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;\n        *(undefined1 **)(puVar17 + -0x20) = local_1e4;\n                    \n        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;\n        FUN_000ec3b0();\n        puVar17 = puVar17 + -4;\n      }\n      ppuVar4 = local_1c4;\n      piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n      if (piVar7 == (int *)0x0) {\n                    \n                    \n        *(undefined4 *)(puVar17 + -4) = 0xe88af;\n        FUN_0022c630();\n      }\n      if ((char)piVar7[7] == '\0') {\n        *(int **)(puVar17 + -0x10) = piVar7;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;\n        FUN_0022ccc0();\n        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);\n        iVar14 = 10;\n        if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }\n      }\n      else {\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }\n      *(int *)(puVar17 + -8) = iVar14;\n      *(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_;\n      *(undefined ****)(puVar17 + -0x10) = local_1d0;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe78f7;\n      FUN_001e7cb0();\n    }" { (if_statement "if ((local_14c != 0) && (local_150[local_14c + -1] == '\r')) {\n        *(undefined4 *)(puVar17 + -8) = 0;\n        *(int *)(puVar17 + -0xc) = local_14c + -1;\n        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;\n        FUN_001ef780();\n      }" if (parenthesized_expression "((local_14c != 0) && (local_150[local_14c + -1] == '\r'))" ( (binary_expression "(local_14c != 0) && (local_150[local_14c + -1] == '\r')" (parenthesized_expression "(local_14c != 0)" ( (binary_expression "local_14c != 0" identifier != number_literal) )) && (parenthesized_expression "(local_150[local_14c + -1] == '\r')" ( (binary_expression "local_150[local_14c + -1] == '\r'" (subscript_expression "local_150[local_14c + -1]" identifier [ (binary_expression "local_14c + -1" identifier + number_literal) ]) == (char_literal "'\r'" ' escape_sequence ')) ))) )) (compound_statement "{\n        *(undefined4 *)(puVar17 + -8) = 0;\n        *(int *)(puVar17 + -0xc) = local_14c + -1;\n        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;\n        FUN_001ef780();\n      }" { (expression_statement "*(undefined4 *)(puVar17 + -8) = 0;" (assignment_expression "*(undefined4 *)(puVar17 + -8) = 0" (pointer_expression "*(undefined4 *)(puVar17 + -8)" * (cast_expression "(undefined4 *)(puVar17 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -8)" ( (binary_expression "puVar17 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar17 + -0xc) = local_14c + -1;" (assignment_expression "*(int *)(puVar17 + -0xc) = local_14c + -1" (pointer_expression "*(int *)(puVar17 + -0xc)" * (cast_expression "(int *)(puVar17 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc)" ( (binary_expression "puVar17 + -0xc" identifier + number_literal) )))) = (binary_expression "local_14c + -1" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;" (assignment_expression "*(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_" (pointer_expression "*(undefined4 *)(puVar17 + -0x10)" * (cast_expression "(undefined4 *)(puVar17 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x10)" ( (binary_expression "puVar17 + -0x10" identifier + number_literal) )))) = (field_expression "local_1cc._0_4_" identifier . field_identifier)) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe7e37;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe7e37" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" * (cast_expression "(undefined4 *)(puVar17 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001ef780();" (call_expression "FUN_001ef780()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "*(undefined4 *)(puVar17 + -8) = 0xc70f6907;" (assignment_expression "*(undefined4 *)(puVar17 + -8) = 0xc70f6907" (pointer_expression "*(undefined4 *)(puVar17 + -8)" * (cast_expression "(undefined4 *)(puVar17 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -8)" ( (binary_expression "puVar17 + -8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(puVar17 + -0xc) = local_14c;" (assignment_expression "*(int *)(puVar17 + -0xc) = local_14c" (pointer_expression "*(int *)(puVar17 + -0xc)" * (cast_expression "(int *)(puVar17 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc)" ( (binary_expression "puVar17 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar17 + -0x10) = local_150;" (assignment_expression "*(undefined1 **)(puVar17 + -0x10) = local_150" (pointer_expression "*(undefined1 **)(puVar17 + -0x10)" * (cast_expression "(undefined1 **)(puVar17 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x10)" ( (binary_expression "puVar17 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe793a;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe793a" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" * (cast_expression "(undefined4 *)(puVar17 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar6 = FUN_001e52b0();" (assignment_expression "uVar6 = FUN_001e52b0()" identifier = (call_expression "FUN_001e52b0()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40);" (assignment_expression "local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40)" identifier = (binary_expression "uVar6 % *(uint *)(param_1 + 0x5a40)" identifier % (pointer_expression "*(uint *)(param_1 + 0x5a40)" * (cast_expression "(uint *)(param_1 + 0x5a40)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5a40)" ( (binary_expression "param_1 + 0x5a40" identifier + number_literal) )))))) ;) (expression_statement "*(uint *)(puVar17 + -0x14) = uVar6;" (assignment_expression "*(uint *)(puVar17 + -0x14) = uVar6" (pointer_expression "*(uint *)(puVar17 + -0x14)" * (cast_expression "(uint *)(puVar17 + -0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_;" (assignment_expression "*(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_" (pointer_expression "*(undefined4 *)(puVar17 + -0x18)" * (cast_expression "(undefined4 *)(puVar17 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x18)" ( (binary_expression "puVar17 + -0x18" identifier + number_literal) )))) = (field_expression "local_1cc._0_4_" identifier . field_identifier)) ;) (expression_statement "*(uint *)(puVar17 + -0x1c) = local_1d8;" (assignment_expression "*(uint *)(puVar17 + -0x1c) = local_1d8" (pointer_expression "*(uint *)(puVar17 + -0x1c)" * (cast_expression "(uint *)(puVar17 + -0x1c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x1c)" ( (binary_expression "puVar17 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 ***)(puVar17 + -0x20) = local_1d4;" (assignment_expression "*(undefined1 ***)(puVar17 + -0x20) = local_1d4" (pointer_expression "*(undefined1 ***)(puVar17 + -0x20)" * (cast_expression "(undefined1 ***)(puVar17 + -0x20)" ( (type_descriptor "undefined1 ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar17 + -0x20)" ( (binary_expression "puVar17 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x24) = 0xe7960;" (assignment_expression "*(undefined4 *)(puVar17 + -0x24) = 0xe7960" (pointer_expression "*(undefined4 *)(puVar17 + -0x24)" * (cast_expression "(undefined4 *)(puVar17 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x24)" ( (binary_expression "puVar17 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar7 = (int *)FUN_000eadf0();" (assignment_expression "piVar7 = (int *)FUN_000eadf0()" identifier = (cast_expression "(int *)FUN_000eadf0()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_000eadf0()" identifier (argument_list "()" ( ))))) ;) (if_statement "if ((piVar7 == (int *)0x0) || (*piVar7 == 0)) {\n        *(undefined4 *)(puVar17 + -0x10) = 0x20;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;\n        puVar8 = (undefined4 *)FUN_001e5200();\n        *puVar8 = 0;\n        puVar8[1] = puVar8 + 3;\n        *(undefined4 *)(puVar17 + -4) = 0;\n        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;\n        *(undefined1 **)(puVar17 + -0xc) = local_150;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;\n        FUN_000513a0();\n        *(undefined4 *)(puVar17 + -0xc) = 1;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8;\n        *(uint *)(puVar17 + -0x14) = uVar6;\n        *(uint *)(puVar17 + -0x18) = local_1d8;\n        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;\n        *(undefined1 **)(puVar17 + -0x20) = local_1e4;\n                    \n        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;\n        FUN_000ec3b0();\n        puVar17 = puVar17 + -4;\n      }" if (parenthesized_expression "((piVar7 == (int *)0x0) || (*piVar7 == 0))" ( (binary_expression "(piVar7 == (int *)0x0) || (*piVar7 == 0)" (parenthesized_expression "(piVar7 == (int *)0x0)" ( (binary_expression "piVar7 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(*piVar7 == 0)" ( (binary_expression "*piVar7 == 0" (pointer_expression "*piVar7" * identifier) == number_literal) ))) )) (compound_statement "{\n        *(undefined4 *)(puVar17 + -0x10) = 0x20;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;\n        puVar8 = (undefined4 *)FUN_001e5200();\n        *puVar8 = 0;\n        puVar8[1] = puVar8 + 3;\n        *(undefined4 *)(puVar17 + -4) = 0;\n        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;\n        *(undefined1 **)(puVar17 + -0xc) = local_150;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;\n        FUN_000513a0();\n        *(undefined4 *)(puVar17 + -0xc) = 1;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8;\n        *(uint *)(puVar17 + -0x14) = uVar6;\n        *(uint *)(puVar17 + -0x18) = local_1d8;\n        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;\n        *(undefined1 **)(puVar17 + -0x20) = local_1e4;\n                    \n        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;\n        FUN_000ec3b0();\n        puVar17 = puVar17 + -4;\n      }" { (expression_statement "*(undefined4 *)(puVar17 + -0x10) = 0x20;" (assignment_expression "*(undefined4 *)(puVar17 + -0x10) = 0x20" (pointer_expression "*(undefined4 *)(puVar17 + -0x10)" * (cast_expression "(undefined4 *)(puVar17 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x10)" ( (binary_expression "puVar17 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe7a80;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe7a80" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" * (cast_expression "(undefined4 *)(puVar17 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "puVar8 = (undefined4 *)FUN_001e5200();" (assignment_expression "puVar8 = (undefined4 *)FUN_001e5200()" identifier = (cast_expression "(undefined4 *)FUN_001e5200()" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_001e5200()" identifier (argument_list "()" ( ))))) ;) (expression_statement "*puVar8 = 0;" (assignment_expression "*puVar8 = 0" (pointer_expression "*puVar8" * identifier) = number_literal) ;) (expression_statement "puVar8[1] = puVar8 + 3;" (assignment_expression "puVar8[1] = puVar8 + 3" (subscript_expression "puVar8[1]" identifier [ number_literal ]) = (binary_expression "puVar8 + 3" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar17 + -4) = 0;" (assignment_expression "*(undefined4 *)(puVar17 + -4) = 0" (pointer_expression "*(undefined4 *)(puVar17 + -4)" * (cast_expression "(undefined4 *)(puVar17 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -4)" ( (binary_expression "puVar17 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined1 **)(puVar17 + -8) = local_150 + local_14c;" (assignment_expression "*(undefined1 **)(puVar17 + -8) = local_150 + local_14c" (pointer_expression "*(undefined1 **)(puVar17 + -8)" * (cast_expression "(undefined1 **)(puVar17 + -8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -8)" ( (binary_expression "puVar17 + -8" identifier + number_literal) )))) = (binary_expression "local_150 + local_14c" identifier + identifier)) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xc) = local_150;" (assignment_expression "*(undefined1 **)(puVar17 + -0xc) = local_150" (pointer_expression "*(undefined1 **)(puVar17 + -0xc)" * (cast_expression "(undefined1 **)(puVar17 + -0xc)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xc)" ( (binary_expression "puVar17 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;" (assignment_expression "*(undefined4 **)(puVar17 + -0x10) = puVar8 + 1" (pointer_expression "*(undefined4 **)(puVar17 + -0x10)" * (cast_expression "(undefined4 **)(puVar17 + -0x10)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x10)" ( (binary_expression "puVar17 + -0x10" identifier + number_literal) )))) = (binary_expression "puVar8 + 1" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe7aac;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe7aac" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" * (cast_expression "(undefined4 *)(puVar17 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000513a0();" (call_expression "FUN_000513a0()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(undefined4 *)(puVar17 + -0xc) = 1;" (assignment_expression "*(undefined4 *)(puVar17 + -0xc) = 1" (pointer_expression "*(undefined4 *)(puVar17 + -0xc)" * (cast_expression "(undefined4 *)(puVar17 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc)" ( (binary_expression "puVar17 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 **)(puVar17 + -0x10) = puVar8;" (assignment_expression "*(undefined4 **)(puVar17 + -0x10) = puVar8" (pointer_expression "*(undefined4 **)(puVar17 + -0x10)" * (cast_expression "(undefined4 **)(puVar17 + -0x10)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x10)" ( (binary_expression "puVar17 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar17 + -0x14) = uVar6;" (assignment_expression "*(uint *)(puVar17 + -0x14) = uVar6" (pointer_expression "*(uint *)(puVar17 + -0x14)" * (cast_expression "(uint *)(puVar17 + -0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar17 + -0x18) = local_1d8;" (assignment_expression "*(uint *)(puVar17 + -0x18) = local_1d8" (pointer_expression "*(uint *)(puVar17 + -0x18)" * (cast_expression "(uint *)(puVar17 + -0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x18)" ( (binary_expression "puVar17 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 ***)(puVar17 + -0x1c) = local_1d4;" (assignment_expression "*(undefined1 ***)(puVar17 + -0x1c) = local_1d4" (pointer_expression "*(undefined1 ***)(puVar17 + -0x1c)" * (cast_expression "(undefined1 ***)(puVar17 + -0x1c)" ( (type_descriptor "undefined1 ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar17 + -0x1c)" ( (binary_expression "puVar17 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar17 + -0x20) = local_1e4;" (assignment_expression "*(undefined1 **)(puVar17 + -0x20) = local_1e4" (pointer_expression "*(undefined1 **)(puVar17 + -0x20)" * (cast_expression "(undefined1 **)(puVar17 + -0x20)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x20)" ( (binary_expression "puVar17 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;" (assignment_expression "*(undefined4 *)(puVar17 + -0x24) = 0xe7ac9" (pointer_expression "*(undefined4 *)(puVar17 + -0x24)" * (cast_expression "(undefined4 *)(puVar17 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x24)" ( (binary_expression "puVar17 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000ec3b0();" (call_expression "FUN_000ec3b0()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar17 = puVar17 + -4;" (assignment_expression "puVar17 = puVar17 + -4" identifier = (binary_expression "puVar17 + -4" identifier + number_literal)) ;) })) (expression_statement "ppuVar4 = local_1c4;" (assignment_expression "ppuVar4 = local_1c4" identifier = identifier) ;) (expression_statement "piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);" (assignment_expression "piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3])" identifier = (pointer_expression "*(int **)((int)aiStack_b8 + (int)local_134[-3])" * (cast_expression "(int **)((int)aiStack_b8 + (int)local_134[-3])" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)aiStack_b8 + (int)local_134[-3])" ( (binary_expression "(int)aiStack_b8 + (int)local_134[-3]" (cast_expression "(int)aiStack_b8" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_134[-3]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "local_134[-3]" identifier [ number_literal ]))) ))))) ;) (if_statement "if (piVar7 == (int *)0x0) {\n                    \n                    \n        *(undefined4 *)(puVar17 + -4) = 0xe88af;\n        FUN_0022c630();\n      }" if (parenthesized_expression "(piVar7 == (int *)0x0)" ( (binary_expression "piVar7 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    \n                    \n        *(undefined4 *)(puVar17 + -4) = 0xe88af;\n        FUN_0022c630();\n      }" { (expression_statement "*(undefined4 *)(puVar17 + -4) = 0xe88af;" (assignment_expression "*(undefined4 *)(puVar17 + -4) = 0xe88af" (pointer_expression "*(undefined4 *)(puVar17 + -4)" * (cast_expression "(undefined4 *)(puVar17 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -4)" ( (binary_expression "puVar17 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0022c630();" (call_expression "FUN_0022c630()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if ((char)piVar7[7] == '\0') {\n        *(int **)(puVar17 + -0x10) = piVar7;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;\n        FUN_0022ccc0();\n        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);\n        iVar14 = 10;\n        if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }\n      }\n      else {\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }" if (parenthesized_expression "((char)piVar7[7] == '\0')" ( (binary_expression "(char)piVar7[7] == '\0'" (cast_expression "(char)piVar7[7]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "piVar7[7]" identifier [ number_literal ])) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        *(int **)(puVar17 + -0x10) = piVar7;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;\n        FUN_0022ccc0();\n        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);\n        iVar14 = 10;\n        if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }\n      }" { (expression_statement "*(int **)(puVar17 + -0x10) = piVar7;" (assignment_expression "*(int **)(puVar17 + -0x10) = piVar7" (pointer_expression "*(int **)(puVar17 + -0x10)" * (cast_expression "(int **)(puVar17 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x10)" ( (binary_expression "puVar17 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe79a8;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe79a8" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" * (cast_expression "(undefined4 *)(puVar17 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0022ccc0();" (call_expression "FUN_0022ccc0()" identifier (argument_list "()" ( ))) ;) (expression_statement "ppuVar2 = *(undefined ***)(*piVar7 + 0x18);" (assignment_expression "ppuVar2 = *(undefined ***)(*piVar7 + 0x18)" identifier = (pointer_expression "*(undefined ***)(*piVar7 + 0x18)" * (cast_expression "(undefined ***)(*piVar7 + 0x18)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(*piVar7 + 0x18)" ( (binary_expression "*piVar7 + 0x18" (pointer_expression "*piVar7" * identifier) + number_literal) ))))) ;) (expression_statement "iVar14 = 10;" (assignment_expression "iVar14 = 10" identifier = number_literal) ;) (if_statement "if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }" if (parenthesized_expression "(ppuVar2 != ppuVar4 + -0xba9e0)" ( (binary_expression "ppuVar2 != ppuVar4 + -0xba9e0" identifier != (binary_expression "ppuVar4 + -0xba9e0" identifier + number_literal)) )) (compound_statement "{\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }" { (expression_statement "*(undefined4 *)(puVar17 + -0xc) = 10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xc) = 10" (pointer_expression "*(undefined4 *)(puVar17 + -0xc)" * (cast_expression "(undefined4 *)(puVar17 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc)" ( (binary_expression "puVar17 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int **)(puVar17 + -0x10) = piVar7;" (assignment_expression "*(int **)(puVar17 + -0x10) = piVar7" (pointer_expression "*(int **)(puVar17 + -0x10)" * (cast_expression "(int **)(puVar17 + -0x10)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x10)" ( (binary_expression "puVar17 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe79cb;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe79cb" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" * (cast_expression "(undefined4 *)(puVar17 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "cVar5 = (*(code *)ppuVar2)();" (assignment_expression "cVar5 = (*(code *)ppuVar2)()" identifier = (call_expression "(*(code *)ppuVar2)()" (parenthesized_expression "(*(code *)ppuVar2)" ( (pointer_expression "*(code *)ppuVar2" * (cast_expression "(code *)ppuVar2" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;) (expression_statement "iVar14 = (int)cVar5;" (assignment_expression "iVar14 = (int)cVar5" identifier = (cast_expression "(int)cVar5" ( (type_descriptor "int" primitive_type) ) identifier)) ;) })) }) (else_clause "else {\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }" else (compound_statement "{\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }" { (expression_statement "iVar14 = (int)*(char *)((int)piVar7 + 0x27);" (assignment_expression "iVar14 = (int)*(char *)((int)piVar7 + 0x27)" identifier = (cast_expression "(int)*(char *)((int)piVar7 + 0x27)" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*(char *)((int)piVar7 + 0x27)" * (cast_expression "(char *)((int)piVar7 + 0x27)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar7 + 0x27)" ( (binary_expression "(int)piVar7 + 0x27" (cast_expression "(int)piVar7" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))))) ;) }))) (expression_statement "*(int *)(puVar17 + -8) = iVar14;" (assignment_expression "*(int *)(puVar17 + -8) = iVar14" (pointer_expression "*(int *)(puVar17 + -8)" * (cast_expression "(int *)(puVar17 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -8)" ( (binary_expression "puVar17 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_;" (assignment_expression "*(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_" (pointer_expression "*(undefined4 *)(puVar17 + -0xc)" * (cast_expression "(undefined4 *)(puVar17 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc)" ( (binary_expression "puVar17 + -0xc" identifier + number_literal) )))) = (field_expression "local_1cc._0_4_" identifier . field_identifier)) ;) (expression_statement "*(undefined ****)(puVar17 + -0x10) = local_1d0;" (assignment_expression "*(undefined ****)(puVar17 + -0x10) = local_1d0" (pointer_expression "*(undefined ****)(puVar17 + -0x10)" * (cast_expression "(undefined ****)(puVar17 + -0x10)" ( (type_descriptor "undefined ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (parenthesized_expression "(puVar17 + -0x10)" ( (binary_expression "puVar17 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe78f7;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe78f7" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" * (cast_expression "(undefined4 *)(puVar17 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001e7cb0();" (call_expression "FUN_001e7cb0()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (local_150 != local_1e0) {\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe7aef;\n      FUN_001e6db0();\n    }" if (parenthesized_expression "(local_150 != local_1e0)" ( (binary_expression "local_150 != local_1e0" identifier != identifier) )) (compound_statement "{\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe7aef;\n      FUN_001e6db0();\n    }" { (expression_statement "*(undefined1 **)(puVar17 + -0x10) = local_150;" (assignment_expression "*(undefined1 **)(puVar17 + -0x10) = local_150" (pointer_expression "*(undefined1 **)(puVar17 + -0x10)" * (cast_expression "(undefined1 **)(puVar17 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x10)" ( (binary_expression "puVar17 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe7aef;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe7aef" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" * (cast_expression "(undefined4 *)(puVar17 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001e6db0();" (call_expression "FUN_001e6db0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "ppuVar4 = local_1c4;" (assignment_expression "ppuVar4 = local_1c4" identifier = identifier) ;) (expression_statement "*(undefined ****)(puVar17 + -0x10) = local_1dc;" (assignment_expression "*(undefined ****)(puVar17 + -0x10) = local_1dc" (pointer_expression "*(undefined ****)(puVar17 + -0x10)" * (cast_expression "(undefined ****)(puVar17 + -0x10)" ( (type_descriptor "undefined ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (parenthesized_expression "(puVar17 + -0x10)" ( (binary_expression "puVar17 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_134 = (undefined ***)(local_200 + 3);" (assignment_expression "local_134 = (undefined ***)(local_200 + 3)" identifier = (cast_expression "(undefined ***)(local_200 + 3)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(local_200 + 3)" ( (binary_expression "local_200 + 3" identifier + number_literal) )))) ;) (expression_statement "local_a4[0] = local_200 + 8;" (assignment_expression "local_a4[0] = local_200 + 8" (subscript_expression "local_a4[0]" identifier [ number_literal ]) = (binary_expression "local_200 + 8" identifier + number_literal)) ;) (expression_statement "local_12c[0] = local_1c4 + -0x9f2;" (assignment_expression "local_12c[0] = local_1c4 + -0x9f2" (subscript_expression "local_12c[0]" identifier [ number_literal ]) = (binary_expression "local_1c4 + -0x9f2" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe7b2f;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe7b2f" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" * (cast_expression "(undefined4 *)(puVar17 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00216e90();" (call_expression "FUN_00216e90()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(undefined1 **)(puVar17 + -0x10) = local_f4;" (assignment_expression "*(undefined1 **)(puVar17 + -0x10) = local_f4" (pointer_expression "*(undefined1 **)(puVar17 + -0x10)" * (cast_expression "(undefined1 **)(puVar17 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x10)" ( (binary_expression "puVar17 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe7b3d;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe7b3d" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" * (cast_expression "(undefined4 *)(puVar17 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001e75f0();" (call_expression "FUN_001e75f0()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_12c[0] = ppuVar4 + -0xbd7;" (assignment_expression "local_12c[0] = ppuVar4 + -0xbd7" (subscript_expression "local_12c[0]" identifier [ number_literal ]) = (binary_expression "ppuVar4 + -0xbd7" identifier + number_literal)) ;) (expression_statement "*(undefined1 **)(puVar17 + -0x10) = local_110;" (assignment_expression "*(undefined1 **)(puVar17 + -0x10) = local_110" (pointer_expression "*(undefined1 **)(puVar17 + -0x10)" * (cast_expression "(undefined1 **)(puVar17 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x10)" ( (binary_expression "puVar17 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe7b5a;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe7b5a" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" * (cast_expression "(undefined4 *)(puVar17 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001e9510();" (call_expression "FUN_001e9510()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_134 = local_1f4;" (assignment_expression "local_134 = local_1f4" identifier = identifier) ;) (expression_statement "*(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;" (assignment_expression "*(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8" (pointer_expression "*(undefined **)((int)&local_134 + (int)local_1f4[-3])" * (cast_expression "(undefined **)((int)&local_134 + (int)local_1f4[-3])" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&local_134 + (int)local_1f4[-3])" ( (binary_expression "(int)&local_134 + (int)local_1f4[-3]" (cast_expression "(int)&local_134" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_134" & identifier)) + (cast_expression "(int)local_1f4[-3]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "local_1f4[-3]" identifier [ number_literal ]))) )))) = identifier) ;) (expression_statement "local_130 = 0;" (assignment_expression "local_130 = 0" identifier = number_literal) ;) (expression_statement "local_a4[0] = local_1fc + 2;" (assignment_expression "local_a4[0] = local_1fc + 2" (subscript_expression "local_a4[0]" identifier [ number_literal ]) = (binary_expression "local_1fc + 2" identifier + number_literal)) ;) (expression_statement "*(undefined ****)(puVar17 + -0x10) = local_1e8;" (assignment_expression "*(undefined ****)(puVar17 + -0x10) = local_1e8" (pointer_expression "*(undefined ****)(puVar17 + -0x10)" * (cast_expression "(undefined ****)(puVar17 + -0x10)" ( (type_descriptor "undefined ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (parenthesized_expression "(puVar17 + -0x10)" ( (binary_expression "puVar17 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe7b9b;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe7b9b" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" * (cast_expression "(undefined4 *)(puVar17 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x14)" ( (binary_expression "puVar17 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0022c040();" (call_expression "FUN_0022c040()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar18 = puVar17;" (assignment_expression "puVar18 = puVar17" identifier = identifier) ;) })) (if_statement "if ((*(char *)(param_1 + 0x72d) != '\0') && (*(char *)(param_1 + 0x42e0) == '\0')) {\n    *(int *)(param_1 + 0x42e4) = (int)local_1c4 + -0x10e8db;\n  }" if (parenthesized_expression "((*(char *)(param_1 + 0x72d) != '\0') && (*(char *)(param_1 + 0x42e0) == '\0'))" ( (binary_expression "(*(char *)(param_1 + 0x72d) != '\0') && (*(char *)(param_1 + 0x42e0) == '\0')" (parenthesized_expression "(*(char *)(param_1 + 0x72d) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x72d) != '\0'" (pointer_expression "*(char *)(param_1 + 0x72d)" * (cast_expression "(char *)(param_1 + 0x72d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x72d)" ( (binary_expression "param_1 + 0x72d" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(*(char *)(param_1 + 0x42e0) == '\0')" ( (binary_expression "*(char *)(param_1 + 0x42e0) == '\0'" (pointer_expression "*(char *)(param_1 + 0x42e0)" * (cast_expression "(char *)(param_1 + 0x42e0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x42e0)" ( (binary_expression "param_1 + 0x42e0" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n    *(int *)(param_1 + 0x42e4) = (int)local_1c4 + -0x10e8db;\n  }" { (expression_statement "*(int *)(param_1 + 0x42e4) = (int)local_1c4 + -0x10e8db;" (assignment_expression "*(int *)(param_1 + 0x42e4) = (int)local_1c4 + -0x10e8db" (pointer_expression "*(int *)(param_1 + 0x42e4)" * (cast_expression "(int *)(param_1 + 0x42e4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x42e4)" ( (binary_expression "param_1 + 0x42e4" identifier + number_literal) )))) = (binary_expression "(int)local_1c4 + -0x10e8db" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) })) (if_statement "if ((*(char *)(param_1 + 0x1a25) != '\0') && (*(char *)(param_1 + 0x1fc) == '\0')) {\n    *(undefined1 *)(param_1 + 0x1fd) = 1;\n  }" if (parenthesized_expression "((*(char *)(param_1 + 0x1a25) != '\0') && (*(char *)(param_1 + 0x1fc) == '\0'))" ( (binary_expression "(*(char *)(param_1 + 0x1a25) != '\0') && (*(char *)(param_1 + 0x1fc) == '\0')" (parenthesized_expression "(*(char *)(param_1 + 0x1a25) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x1a25) != '\0'" (pointer_expression "*(char *)(param_1 + 0x1a25)" * (cast_expression "(char *)(param_1 + 0x1a25)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1a25)" ( (binary_expression "param_1 + 0x1a25" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(*(char *)(param_1 + 0x1fc) == '\0')" ( (binary_expression "*(char *)(param_1 + 0x1fc) == '\0'" (pointer_expression "*(char *)(param_1 + 0x1fc)" * (cast_expression "(char *)(param_1 + 0x1fc)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1fc)" ( (binary_expression "param_1 + 0x1fc" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n    *(undefined1 *)(param_1 + 0x1fd) = 1;\n  }" { (expression_statement "*(undefined1 *)(param_1 + 0x1fd) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x1fd) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x1fd)" * (cast_expression "(undefined1 *)(param_1 + 0x1fd)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1fd)" ( (binary_expression "param_1 + 0x1fd" identifier + number_literal) )))) = number_literal) ;) })) (expression_statement "*(int *)(puVar18 + -0x10) = param_1;" (assignment_expression "*(int *)(puVar18 + -0x10) = param_1" (pointer_expression "*(int *)(puVar18 + -0x10)" * (cast_expression "(int *)(puVar18 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe7bef;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe7bef" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000ddde0();" (call_expression "FUN_000ddde0()" identifier (argument_list "()" ( ))) ;) (if_statement "if (*(char *)(param_1 + 0x1a25) == '\0') {\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      if (*(char *)(param_1 + 0x5938) != '\0') {\n        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;\n        FUN_00065450();\n      }\n      if (*(char *)(param_1 + 0x318d) != '\0') {\n        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;\n        FUN_00065450();\n      }\n    }\n    if (*(int *)(param_1 + 0x1478) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe898c;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8994;\n      FUN_00065450();\n    }\n    if (*(int *)(param_1 + 0x1428) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c0;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c8;\n      FUN_00065450();\n    }\n    if ((*(char *)(param_1 + 0x318d) != '\0') && (*(int *)(param_1 + 0x3288) != 0)) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe7e13;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b;\n      FUN_00065450();\n    }\n  }\n  else {\n    if (*(char *)(param_1 + 0x5938) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8aea;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe892f;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8937;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x318d) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe894e;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8956;\n      FUN_00065450();\n    }\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0x1a25) == '\0')" ( (binary_expression "*(char *)(param_1 + 0x1a25) == '\0'" (pointer_expression "*(char *)(param_1 + 0x1a25)" * (cast_expression "(char *)(param_1 + 0x1a25)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1a25)" ( (binary_expression "param_1 + 0x1a25" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      if (*(char *)(param_1 + 0x5938) != '\0') {\n        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;\n        FUN_00065450();\n      }\n      if (*(char *)(param_1 + 0x318d) != '\0') {\n        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;\n        FUN_00065450();\n      }\n    }\n    if (*(int *)(param_1 + 0x1478) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe898c;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8994;\n      FUN_00065450();\n    }\n    if (*(int *)(param_1 + 0x1428) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c0;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c8;\n      FUN_00065450();\n    }\n    if ((*(char *)(param_1 + 0x318d) != '\0') && (*(int *)(param_1 + 0x3288) != 0)) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe7e13;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b;\n      FUN_00065450();\n    }\n  }" { (if_statement "if (*(char *)(param_1 + 0x2931) != '\0') {\n      if (*(char *)(param_1 + 0x5938) != '\0') {\n        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;\n        FUN_00065450();\n      }\n      if (*(char *)(param_1 + 0x318d) != '\0') {\n        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;\n        FUN_00065450();\n      }\n    }" if (parenthesized_expression "(*(char *)(param_1 + 0x2931) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x2931) != '\0'" (pointer_expression "*(char *)(param_1 + 0x2931)" * (cast_expression "(char *)(param_1 + 0x2931)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2931)" ( (binary_expression "param_1 + 0x2931" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      if (*(char *)(param_1 + 0x5938) != '\0') {\n        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;\n        FUN_00065450();\n      }\n      if (*(char *)(param_1 + 0x318d) != '\0') {\n        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;\n        FUN_00065450();\n      }\n    }" { (if_statement "if (*(char *)(param_1 + 0x5938) != '\0') {\n        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;\n        FUN_00065450();\n      }" if (parenthesized_expression "(*(char *)(param_1 + 0x5938) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x5938) != '\0'" (pointer_expression "*(char *)(param_1 + 0x5938)" * (cast_expression "(char *)(param_1 + 0x5938)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5938)" ( (binary_expression "param_1 + 0x5938" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;\n        FUN_00065450();\n      }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f6ac" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8b0c" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;" (assignment_expression "*(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14" (pointer_expression "*(undefined1 **)(puVar18 + -0x14)" * (cast_expression "(undefined1 **)(puVar18 + -0x14)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = (pointer_expression "&LAB_000e8b14" & identifier)) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(char *)(param_1 + 0x318d) != '\0') {\n        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;\n        FUN_00065450();\n      }" if (parenthesized_expression "(*(char *)(param_1 + 0x318d) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x318d) != '\0'" (pointer_expression "*(char *)(param_1 + 0x318d)" * (cast_expression "(char *)(param_1 + 0x318d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x318d)" ( (binary_expression "param_1 + 0x318d" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;\n        FUN_00065450();\n      }" { (expression_statement "*(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;" (assignment_expression "*(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393" (pointer_expression "*(int *)(puVar18 + -0x10)" * (cast_expression "(int *)(puVar18 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "(int)local_1c4 + -0x100393" (cast_expression "(int)local_1c4" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe896d;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe896d" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8975;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8975" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) })) (if_statement "if (*(int *)(param_1 + 0x1478) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe898c;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8994;\n      FUN_00065450();\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0x1478) != 0)" ( (binary_expression "*(int *)(param_1 + 0x1478) != 0" (pointer_expression "*(int *)(param_1 + 0x1478)" * (cast_expression "(int *)(param_1 + 0x1478)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1478)" ( (binary_expression "param_1 + 0x1478" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe898c;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8994;\n      FUN_00065450();\n    }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f69b" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe898c;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe898c" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8994;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8994" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(int *)(param_1 + 0x1428) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c0;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c8;\n      FUN_00065450();\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0x1428) != 0)" ( (binary_expression "*(int *)(param_1 + 0x1428) != 0" (pointer_expression "*(int *)(param_1 + 0x1428)" * (cast_expression "(int *)(param_1 + 0x1428)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1428)" ( (binary_expression "param_1 + 0x1428" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c0;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c8;\n      FUN_00065450();\n    }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f690" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe89c0;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe89c0" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe89c8;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe89c8" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if ((*(char *)(param_1 + 0x318d) != '\0') && (*(int *)(param_1 + 0x3288) != 0)) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe7e13;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b;\n      FUN_00065450();\n    }" if (parenthesized_expression "((*(char *)(param_1 + 0x318d) != '\0') && (*(int *)(param_1 + 0x3288) != 0))" ( (binary_expression "(*(char *)(param_1 + 0x318d) != '\0') && (*(int *)(param_1 + 0x3288) != 0)" (parenthesized_expression "(*(char *)(param_1 + 0x318d) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x318d) != '\0'" (pointer_expression "*(char *)(param_1 + 0x318d)" * (cast_expression "(char *)(param_1 + 0x318d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x318d)" ( (binary_expression "param_1 + 0x318d" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(*(int *)(param_1 + 0x3288) != 0)" ( (binary_expression "*(int *)(param_1 + 0x3288) != 0" (pointer_expression "*(int *)(param_1 + 0x3288)" * (cast_expression "(int *)(param_1 + 0x3288)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3288)" ( (binary_expression "param_1 + 0x3288" identifier + number_literal) )))) != number_literal) ))) )) (compound_statement "{\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe7e13;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b;\n      FUN_00065450();\n    }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f684" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe7e13;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe7e13" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b;" (assignment_expression "*(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b" (pointer_expression "*(undefined **)(puVar18 + -0x14)" * (cast_expression "(undefined **)(puVar18 + -0x14)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = (pointer_expression "&UNK_000e7e1b" & identifier)) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) }) (else_clause "else {\n    if (*(char *)(param_1 + 0x5938) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8aea;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe892f;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8937;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x318d) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe894e;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8956;\n      FUN_00065450();\n    }\n  }" else (compound_statement "{\n    if (*(char *)(param_1 + 0x5938) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8aea;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe892f;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8937;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x318d) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe894e;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8956;\n      FUN_00065450();\n    }\n  }" { (if_statement "if (*(char *)(param_1 + 0x5938) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8aea;\n      FUN_00065450();\n    }" if (parenthesized_expression "(*(char *)(param_1 + 0x5938) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x5938) != '\0'" (pointer_expression "*(char *)(param_1 + 0x5938)" * (cast_expression "(char *)(param_1 + 0x5938)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5938)" ( (binary_expression "param_1 + 0x5938" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8aea;\n      FUN_00065450();\n    }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f6bf" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8ae2" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8aea;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8aea" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(char *)(param_1 + 0x2931) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe892f;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8937;\n      FUN_00065450();\n    }" if (parenthesized_expression "(*(char *)(param_1 + 0x2931) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x2931) != '\0'" (pointer_expression "*(char *)(param_1 + 0x2931)" * (cast_expression "(char *)(param_1 + 0x2931)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2931)" ( (binary_expression "param_1 + 0x2931" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe892f;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8937;\n      FUN_00065450();\n    }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f6b5" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe892f;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe892f" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8937;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8937" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(char *)(param_1 + 0x318d) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe894e;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8956;\n      FUN_00065450();\n    }" if (parenthesized_expression "(*(char *)(param_1 + 0x318d) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x318d) != '\0'" (pointer_expression "*(char *)(param_1 + 0x318d)" * (cast_expression "(char *)(param_1 + 0x318d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x318d)" ( (binary_expression "param_1 + 0x318d" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe894e;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8956;\n      FUN_00065450();\n    }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f6a3" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe894e;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe894e" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8956;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8956" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) }))) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = *(undefined4 *)(param_1 + 0x27ec);" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = *(undefined4 *)(param_1 + 0x27ec)" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(param_1 + 0x27ec)" * (cast_expression "(undefined4 *)(param_1 + 0x27ec)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x27ec)" ( (binary_expression "param_1 + 0x27ec" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe7c40;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe7c40" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar14 = FUN_000dd760();" (assignment_expression "iVar14 = FUN_000dd760()" identifier = (call_expression "FUN_000dd760()" identifier (argument_list "()" ( )))) ;) (if_statement "if ((iVar14 != 0) &&\n     (((*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||\n      (*(char *)(param_1 + 0x318d) != '\0')))) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f678;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8910;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8918;\n    FUN_00065450();\n  }" if (parenthesized_expression "((iVar14 != 0) &&\n     (((*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||\n      (*(char *)(param_1 + 0x318d) != '\0'))))" ( (binary_expression "(iVar14 != 0) &&\n     (((*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||\n      (*(char *)(param_1 + 0x318d) != '\0')))" (parenthesized_expression "(iVar14 != 0)" ( (binary_expression "iVar14 != 0" identifier != number_literal) )) && (parenthesized_expression "(((*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||\n      (*(char *)(param_1 + 0x318d) != '\0')))" ( (parenthesized_expression "((*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||\n      (*(char *)(param_1 + 0x318d) != '\0'))" ( (binary_expression "(*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||\n      (*(char *)(param_1 + 0x318d) != '\0')" (parenthesized_expression "(*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0'))" ( (binary_expression "*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')" (binary_expression "*(char *)(param_1 + 0x1a25) != '\0'" (pointer_expression "*(char *)(param_1 + 0x1a25)" * (cast_expression "(char *)(param_1 + 0x1a25)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1a25)" ( (binary_expression "param_1 + 0x1a25" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) || (parenthesized_expression "(*(char *)(param_1 + 0x2931) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x2931) != '\0'" (pointer_expression "*(char *)(param_1 + 0x2931)" * (cast_expression "(char *)(param_1 + 0x2931)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2931)" ( (binary_expression "param_1 + 0x2931" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) ))) )) || (parenthesized_expression "(*(char *)(param_1 + 0x318d) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x318d) != '\0'" (pointer_expression "*(char *)(param_1 + 0x318d)" * (cast_expression "(char *)(param_1 + 0x318d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x318d)" ( (binary_expression "param_1 + 0x318d" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) ))) )) ))) )) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f678;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8910;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8918;\n    FUN_00065450();\n  }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f678;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f678" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f678" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8910;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8910" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8918;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8918" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if ((*(char *)(param_1 + 0x1ae4) != '\0') &&\n     ((dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1)))) {\n    local_1cc = dVar1;\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f668;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe88cc;\n    uVar11 = gettext();\n    dVar1 = local_1cc;\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(double *)(puVar18 + -0xc) = dVar1;\n                    \n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe88de;\n    FUN_00065450();\n  }" if (parenthesized_expression "((*(char *)(param_1 + 0x1ae4) != '\0') &&\n     ((dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1))))" ( (binary_expression "(*(char *)(param_1 + 0x1ae4) != '\0') &&\n     ((dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1)))" (parenthesized_expression "(*(char *)(param_1 + 0x1ae4) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x1ae4) != '\0'" (pointer_expression "*(char *)(param_1 + 0x1ae4)" * (cast_expression "(char *)(param_1 + 0x1ae4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1ae4)" ( (binary_expression "param_1 + 0x1ae4" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "((dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1)))" ( (parenthesized_expression "(dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1))" ( (comma_expression "dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1)" (assignment_expression "dVar1 = *(double *)(param_1 + 0x1ae8)" identifier = (pointer_expression "*(double *)(param_1 + 0x1ae8)" * (cast_expression "(double *)(param_1 + 0x1ae8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1ae8)" ( (binary_expression "param_1 + 0x1ae8" identifier + number_literal) ))))) , (binary_expression "dVar1 < 0.0 || (1.0 <= dVar1)" (binary_expression "dVar1 < 0.0" identifier < number_literal) || (parenthesized_expression "(1.0 <= dVar1)" ( (binary_expression "1.0 <= dVar1" number_literal <= identifier) )))) )) ))) )) (compound_statement "{\n    local_1cc = dVar1;\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f668;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe88cc;\n    uVar11 = gettext();\n    dVar1 = local_1cc;\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(double *)(puVar18 + -0xc) = dVar1;\n                    \n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe88de;\n    FUN_00065450();\n  }" { (expression_statement "local_1cc = dVar1;" (assignment_expression "local_1cc = dVar1" identifier = identifier) ;) (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f668;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f668" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f668" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe88cc;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe88cc" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "dVar1 = local_1cc;" (assignment_expression "dVar1 = local_1cc" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(double *)(puVar18 + -0xc) = dVar1;" (assignment_expression "*(double *)(puVar18 + -0xc) = dVar1" (pointer_expression "*(double *)(puVar18 + -0xc)" * (cast_expression "(double *)(puVar18 + -0xc)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0xc)" ( (binary_expression "puVar18 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe88de;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe88de" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(char *)(param_1 + 0x5a1c) == '\0') {\n    if (*(int *)(param_1 + 0x5a10) == 0) goto LAB_000e7d53;\n  }\n  else if (*(int *)(param_1 + 0x5a10) == 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a66;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a6e;\n    FUN_00065450();\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0x5a1c) == '\0')" ( (binary_expression "*(char *)(param_1 + 0x5a1c) == '\0'" (pointer_expression "*(char *)(param_1 + 0x5a1c)" * (cast_expression "(char *)(param_1 + 0x5a1c)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5a1c)" ( (binary_expression "param_1 + 0x5a1c" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (*(int *)(param_1 + 0x5a10) == 0) goto LAB_000e7d53;\n  }" { (if_statement "if (*(int *)(param_1 + 0x5a10) == 0) goto LAB_000e7d53;" if (parenthesized_expression "(*(int *)(param_1 + 0x5a10) == 0)" ( (binary_expression "*(int *)(param_1 + 0x5a10) == 0" (pointer_expression "*(int *)(param_1 + 0x5a10)" * (cast_expression "(int *)(param_1 + 0x5a10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5a10)" ( (binary_expression "param_1 + 0x5a10" identifier + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_000e7d53;" goto statement_identifier ;)) }) (else_clause "else if (*(int *)(param_1 + 0x5a10) == 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a66;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a6e;\n    FUN_00065450();\n  }" else (if_statement "if (*(int *)(param_1 + 0x5a10) == 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a66;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a6e;\n    FUN_00065450();\n  }" if (parenthesized_expression "(*(int *)(param_1 + 0x5a10) == 0)" ( (binary_expression "*(int *)(param_1 + 0x5a10) == 0" (pointer_expression "*(int *)(param_1 + 0x5a10)" * (cast_expression "(int *)(param_1 + 0x5a10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5a10)" ( (binary_expression "param_1 + 0x5a10" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a66;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a6e;\n    FUN_00065450();\n  }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f658" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8a66;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8a66" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8a6e;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8a6e" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })))) (if_statement "if (*(char *)(param_1 + 0x318d) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f63c;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a85;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a8d;\n    FUN_00065450();\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0x318d) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x318d) != '\0'" (pointer_expression "*(char *)(param_1 + 0x318d)" * (cast_expression "(char *)(param_1 + 0x318d)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x318d)" ( (binary_expression "param_1 + 0x318d" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f63c;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a85;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a8d;\n    FUN_00065450();\n  }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f63c;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f63c" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f63c" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8a85;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8a85" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8a8d;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8a8d" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(char *)(param_1 + 0x3095) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f630;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aa4;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aac;\n    FUN_00065450();\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0x3095) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x3095) != '\0'" (pointer_expression "*(char *)(param_1 + 0x3095)" * (cast_expression "(char *)(param_1 + 0x3095)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3095)" ( (binary_expression "param_1 + 0x3095" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f630;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aa4;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aac;\n    FUN_00065450();\n  }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f630;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f630" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f630" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8aa4;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8aa4" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8aac;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8aac" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(int *)(param_1 + 0x593c) != 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f621;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8ac3;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8acb;\n    FUN_00065450();\n  }" if (parenthesized_expression "(*(int *)(param_1 + 0x593c) != 0)" ( (binary_expression "*(int *)(param_1 + 0x593c) != 0" (pointer_expression "*(int *)(param_1 + 0x593c)" * (cast_expression "(int *)(param_1 + 0x593c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x593c)" ( (binary_expression "param_1 + 0x593c" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f621;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8ac3;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8acb;\n    FUN_00065450();\n  }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f621;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f621" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f621" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8ac3;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8ac3" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8acb;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8acb" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(char *)(param_1 + 0x56b9) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f614;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a28;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a30;\n    FUN_00065450();\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0x56b9) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x56b9) != '\0'" (pointer_expression "*(char *)(param_1 + 0x56b9)" * (cast_expression "(char *)(param_1 + 0x56b9)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x56b9)" ( (binary_expression "param_1 + 0x56b9" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f614;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a28;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a30;\n    FUN_00065450();\n  }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f614;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f614" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f614" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8a28;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8a28" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8a30;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8a30" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(char *)(param_1 + 0x2931) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f607;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a47;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a4f;\n    FUN_00065450();\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0x2931) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x2931) != '\0'" (pointer_expression "*(char *)(param_1 + 0x2931)" * (cast_expression "(char *)(param_1 + 0x2931)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x2931)" ( (binary_expression "param_1 + 0x2931" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f607;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a47;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a4f;\n    FUN_00065450();\n  }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f607;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f607" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f607" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8a47;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8a47" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8a4f;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8a4f" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (*(char *)(param_1 + 0x18b1) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5fb;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe871f;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8727;\n    FUN_000654e0();\n    *(undefined1 *)(param_1 + 0x18b1) = 0;\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0x18b1) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x18b1) != '\0'" (pointer_expression "*(char *)(param_1 + 0x18b1)" * (cast_expression "(char *)(param_1 + 0x18b1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x18b1)" ( (binary_expression "param_1 + 0x18b1" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5fb;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe871f;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8727;\n    FUN_000654e0();\n    *(undefined1 *)(param_1 + 0x18b1) = 0;\n  }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5fb;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5fb" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f5fb" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe871f;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe871f" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8727;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8727" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000654e0();" (call_expression "FUN_000654e0()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(undefined1 *)(param_1 + 0x18b1) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x18b1) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x18b1)" * (cast_expression "(undefined1 *)(param_1 + 0x18b1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x18b1)" ( (binary_expression "param_1 + 0x18b1" identifier + number_literal) )))) = number_literal) ;) })) (expression_statement "bVar22 = *(int *)(param_1 + 0x5934) == 0;" (assignment_expression "bVar22 = *(int *)(param_1 + 0x5934) == 0" identifier = (binary_expression "*(int *)(param_1 + 0x5934) == 0" (pointer_expression "*(int *)(param_1 + 0x5934)" * (cast_expression "(int *)(param_1 + 0x5934)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5934)" ( (binary_expression "param_1 + 0x5934" identifier + number_literal) )))) == number_literal)) ;) (expression_statement "bVar24 = !bVar22;" (assignment_expression "bVar24 = !bVar22" identifier = (unary_expression "!bVar22" ! identifier)) ;) (if_statement "if (bVar24) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5ef;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86e7;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86ef;\n    FUN_000654e0();\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }" if (parenthesized_expression "(bVar24)" ( identifier )) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5ef;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86e7;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86ef;\n    FUN_000654e0();\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5ef;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5ef" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f5ef" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe86e7;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe86e7" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe86ef;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe86ef" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000654e0();" (call_expression "FUN_000654e0()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x5934) = 0;" (assignment_expression "*(undefined4 *)(param_1 + 0x5934) = 0" (pointer_expression "*(undefined4 *)(param_1 + 0x5934)" * (cast_expression "(undefined4 *)(param_1 + 0x5934)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5934)" ( (binary_expression "param_1 + 0x5934" identifier + number_literal) )))) = number_literal) ;) })) (expression_statement "bVar24 = bVar24 && (undefined1 *)0xffffffef < puVar18 + -0x10;" (assignment_expression "bVar24 = bVar24 && (undefined1 *)0xffffffef < puVar18 + -0x10" identifier = (binary_expression "bVar24 && (undefined1 *)0xffffffef < puVar18 + -0x10" identifier && (binary_expression "(undefined1 *)0xffffffef < puVar18 + -0x10" (cast_expression "(undefined1 *)0xffffffef" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) < (binary_expression "puVar18 + -0x10" identifier + number_literal)))) ;) (expression_statement "bVar22 = bVar22 || puVar18 == (undefined1 *)0x0;" (assignment_expression "bVar22 = bVar22 || puVar18 == (undefined1 *)0x0" identifier = (binary_expression "bVar22 || puVar18 == (undefined1 *)0x0" identifier || (binary_expression "puVar18 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)))) ;) (expression_statement "iVar14 = 5;" (assignment_expression "iVar14 = 5" identifier = number_literal) ;) (expression_statement "pbVar19 = *(byte **)(param_1 + 0x99c);" (assignment_expression "pbVar19 = *(byte **)(param_1 + 0x99c)" identifier = (pointer_expression "*(byte **)(param_1 + 0x99c)" * (cast_expression "(byte **)(param_1 + 0x99c)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x99c)" ( (binary_expression "param_1 + 0x99c" identifier + number_literal) ))))) ;) (expression_statement "pbVar20 = local_1f0;" (assignment_expression "pbVar20 = local_1f0" identifier = identifier) ;) (do_statement "do {\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    bVar24 = *pbVar19 < *pbVar20;\n    bVar22 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n    pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n  } while (bVar22);" do (compound_statement "{\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    bVar24 = *pbVar19 < *pbVar20;\n    bVar22 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n    pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n  }" { (if_statement "if (iVar14 == 0) break;" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" identifier = (binary_expression "iVar14 + -1" identifier + number_literal)) ;) (expression_statement "bVar24 = *pbVar19 < *pbVar20;" (assignment_expression "bVar24 = *pbVar19 < *pbVar20" identifier = (binary_expression "*pbVar19 < *pbVar20" (pointer_expression "*pbVar19" * identifier) < (pointer_expression "*pbVar20" * identifier))) ;) (expression_statement "bVar22 = *pbVar19 == *pbVar20;" (assignment_expression "bVar22 = *pbVar19 == *pbVar20" identifier = (binary_expression "*pbVar19 == *pbVar20" (pointer_expression "*pbVar19" * identifier) == (pointer_expression "*pbVar20" * identifier))) ;) (expression_statement "pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1" identifier = (binary_expression "pbVar19 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar19 + (uint)bVar25 * -2" identifier + (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1" identifier = (binary_expression "pbVar20 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar25 * -2" identifier + (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar22)" ( identifier )) ;) (if_statement "if ((!bVar24 && !bVar22) != bVar24) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5e5;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86af;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe86b7;\n    FUN_000654e0();\n    *(byte **)(param_1 + 0x99c) = local_1f0;\n  }" if (parenthesized_expression "((!bVar24 && !bVar22) != bVar24)" ( (binary_expression "(!bVar24 && !bVar22) != bVar24" (parenthesized_expression "(!bVar24 && !bVar22)" ( (binary_expression "!bVar24 && !bVar22" (unary_expression "!bVar24" ! identifier) && (unary_expression "!bVar22" ! identifier)) )) != identifier) )) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5e5;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86af;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe86b7;\n    FUN_000654e0();\n    *(byte **)(param_1 + 0x99c) = local_1f0;\n  }" { (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5e5;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5e5" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" * (cast_expression "(undefined ***)(puVar18 + -0x10)" ( (type_descriptor "undefined ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = (binary_expression "local_1c4 + -0x3f5e5" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe86af;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe86af" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" identifier = (call_expression "gettext()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" * (cast_expression "(undefined4 *)(puVar18 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe86b7;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe86b7" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_000654e0();" (call_expression "FUN_000654e0()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(byte **)(param_1 + 0x99c) = local_1f0;" (assignment_expression "*(byte **)(param_1 + 0x99c) = local_1f0" (pointer_expression "*(byte **)(param_1 + 0x99c)" * (cast_expression "(byte **)(param_1 + 0x99c)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x99c)" ( (binary_expression "param_1 + 0x99c" identifier + number_literal) )))) = identifier) ;) })) (labeled_statement "LAB_000e7d53:\n  if (*(char *)(param_1 + 0x3344) != '\0') {\n    *(undefined1 *)(param_1 + 0x32c9) = 1;\n  }" statement_identifier : (if_statement "if (*(char *)(param_1 + 0x3344) != '\0') {\n    *(undefined1 *)(param_1 + 0x32c9) = 1;\n  }" if (parenthesized_expression "(*(char *)(param_1 + 0x3344) != '\0')" ( (binary_expression "*(char *)(param_1 + 0x3344) != '\0'" (pointer_expression "*(char *)(param_1 + 0x3344)" * (cast_expression "(char *)(param_1 + 0x3344)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3344)" ( (binary_expression "param_1 + 0x3344" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    *(undefined1 *)(param_1 + 0x32c9) = 1;\n  }" { (expression_statement "*(undefined1 *)(param_1 + 0x32c9) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x32c9) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x32c9)" * (cast_expression "(undefined1 *)(param_1 + 0x32c9)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x32c9)" ( (binary_expression "param_1 + 0x32c9" identifier + number_literal) )))) = number_literal) ;) }))) (if_statement "if (local_1bc != local_1ec) {\n    *(undefined1 **)(puVar18 + -0x10) = local_1bc;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe7d83;\n    FUN_001e6db0();\n  }" if (parenthesized_expression "(local_1bc != local_1ec)" ( (binary_expression "local_1bc != local_1ec" identifier != identifier) )) (compound_statement "{\n    *(undefined1 **)(puVar18 + -0x10) = local_1bc;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe7d83;\n    FUN_001e6db0();\n  }" { (expression_statement "*(undefined1 **)(puVar18 + -0x10) = local_1bc;" (assignment_expression "*(undefined1 **)(puVar18 + -0x10) = local_1bc" (pointer_expression "*(undefined1 **)(puVar18 + -0x10)" * (cast_expression "(undefined1 **)(puVar18 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + -0x10)" ( (binary_expression "puVar18 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe7d83;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe7d83" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" * (cast_expression "(undefined4 *)(puVar18 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + -0x14)" ( (binary_expression "puVar18 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_001e6db0();" (call_expression "FUN_001e6db0()" identifier (argument_list "()" ( ))) ;) })) (return_statement "return;" return ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (array_declarator IDENT [ LIT ]))) ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (array_declarator IDENT [ LIT ]))) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = BOOL) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = BOOL) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = BOOL) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;)) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;)) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) ))) )) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) , (unary_expression ! IDENT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") , IDENT ))) ;) })) }))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ^ LIT)) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence '))) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence '))) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) }))) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT) )) + LIT)) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (string_literal " string_content ") )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , IDENT , IDENT , IDENT ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence '))) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) })) }))) }))) }))) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence ')) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) || (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) })) })) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) , LIT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , IDENT , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) , LIT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , LIT , LIT , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) , LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (pointer_expression & IDENT) ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (binary_expression IDENT + IDENT) , LIT ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) , LIT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , IDENT , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) , LIT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , LIT , LIT , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) , LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (pointer_expression & IDENT) ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (binary_expression IDENT + IDENT) , LIT ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) , LIT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , IDENT , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) , LIT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , LIT , LIT , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) , LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (pointer_expression & IDENT) ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (binary_expression IDENT + IDENT) , LIT ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) , LIT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (pointer_expression & IDENT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , IDENT , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) , LIT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , LIT , LIT , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) , LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (field_expression IDENT . field_identifier) ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (binary_expression IDENT + IDENT) , LIT ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT , LIT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT , IDENT ))) ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (pointer_expression & IDENT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression IDENT - IDENT)) , (binary_expression IDENT != LIT)) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , IDENT , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (binary_expression IDENT - IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (binary_expression IDENT + IDENT) , (binary_expression (binary_expression IDENT + IDENT) + IDENT) , LIT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (binary_expression IDENT + IDENT) , LIT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT , LIT , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) , LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , IDENT , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) , LIT ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( BOOL )) ;) })) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (pointer_expression & IDENT))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression & IDENT)) + (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) + (cast_expression ( (type_descriptor TYPE) ) (pointer_expression & IDENT))) , LIT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (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 TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) | LIT) ))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT ))) ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) )))) != (binary_expression IDENT + LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) )))))) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))))) ;) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (pointer_expression & IDENT) ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (while_statement while (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ (binary_expression IDENT + LIT) ]) == (char_literal ' escape_sequence ')) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT % (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) || (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == LIT) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (binary_expression IDENT + LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))))) ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression & IDENT)) + (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence ')) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence ')) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) || (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) ))) )) || (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) , (binary_expression (binary_expression IDENT < LIT) || (parenthesized_expression ( (binary_expression LIT <= IDENT) )))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT)) ;) (expression_statement (assignment_expression IDENT = (unary_expression ! IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT && (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) < (binary_expression IDENT + LIT)))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT || (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) != IDENT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) })) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (return_statement return ;) })))
(function_definition "void FUN_000e74a0(int param_1)\n\n{\n  double dVar1;\n  undefined **ppuVar2;\n  undefined1 **ppuVar3;\n  undefined **ppuVar4;\n  char cVar5;\n  uint uVar6;\n  int *piVar7;\n  undefined4 *puVar8;\n  size_t sVar9;\n  uint uVar10;\n  undefined4 uVar11;\n  char *pcVar12;\n  undefined4 uVar13;\n  int iVar14;\n  undefined *puVar15;\n  uint uVar16;\n  undefined1 *puVar17;\n  undefined1 *puVar18;\n  byte *pbVar19;\n  byte *pbVar20;\n  byte *pbVar21;\n  bool bVar22;\n  bool bVar23;\n  bool bVar24;\n  byte bVar25;\n  undefined4 uStackY_230;\n  undefined1 auStack_20c [12];\n  undefined **local_200;\n  undefined **local_1fc;\n  undefined *local_1f8;\n  undefined ***local_1f4;\n  byte *local_1f0;\n  undefined1 *local_1ec;\n  undefined ***local_1e8;\n  undefined1 *local_1e4;\n  undefined1 *local_1e0;\n  undefined ***local_1dc;\n  uint local_1d8;\n  undefined1 **local_1d4;\n  undefined ***local_1d0;\n  double local_1cc;\n  undefined **local_1c4;\n  undefined1 local_1c0 [4];\n  undefined1 *local_1bc;\n  uint local_1b8;\n  undefined1 local_1b4 [16];\n  undefined1 *local_1a4;\n  int local_1a0;\n  undefined1 local_19c [16];\n  undefined2 local_18c;\n  undefined1 *local_188;\n  int local_184;\n  undefined1 local_180 [16];\n  undefined2 local_170;\n  undefined1 *local_16c;\n  int local_168;\n  undefined1 local_164 [16];\n  undefined2 local_154;\n  undefined1 *local_150;\n  int local_14c;\n  undefined1 local_148 [16];\n  undefined2 local_138;\n  undefined ***local_134;\n  int local_130;\n  undefined **local_12c [4];\n  undefined2 local_11c;\n  undefined1 local_110 [28];\n  undefined1 local_f4 [60];\n  int aiStack_b8 [5];\n  undefined **local_a4 [5];\n  byte local_90;\n  undefined4 local_34;\n  undefined2 local_30;\n  undefined4 local_2c;\n  undefined4 local_28;\n  undefined4 local_24;\n  undefined4 local_20;\n  \n  bVar25 = 0;\n  local_1c4 = &__DT_PLTGOT;\n  if (*(char *)(param_1 + 0x3469) == '\0') {\n    if (*(char *)(param_1 + 0x34e5) != '\0') goto LAB_000e79ea;\n    if (*(char *)(param_1 + 0x3561) != '\0') {\n      bVar24 = false;\n      goto LAB_000e79f9;\n    }\n    bVar24 = false;\n    if (*(char *)(param_1 + 0x7a9) != '\0') goto LAB_000e7a0c;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x34e5) = 1;\nLAB_000e79ea:\n    bVar24 = true;\n    *(undefined1 *)(param_1 + 0x3561) = 1;\nLAB_000e79f9:\n    *(undefined1 *)(param_1 + 0x35dd) = 1;\n    if (*(char *)(param_1 + 0x7a9) != '\0') {\nLAB_000e7a0c:\n      *(undefined1 *)(param_1 + 0x1a25) = 1;\n    }\n    if (((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&\n       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)) {\n      local_1c4 = &__DT_PLTGOT;\n                    \n      FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);\n    }\n  }\n  if (*(char *)(param_1 + 0xbcd) != '\0') {\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }\n  if (*(char *)(param_1 + 0xc49) != '\0') {\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }\n  if (*(char *)(param_1 + 0xb50) == '\0') {\n    local_1cc = (double)CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d));\n    *(byte *)(param_1 + 0xb51) = *(byte *)(param_1 + 0x318d) ^ 1;\n  }\n  bVar24 = *(char *)(param_1 + 0x4f31) == '\0';\n  if (bVar24) {\n    bVar24 = *(char *)(param_1 + 0x5545) == '\0';\n    if (!bVar24) {\n      *(undefined4 *)(param_1 + 0x5930) = 2;\n    }\n  }\n  else {\n    *(undefined4 *)(param_1 + 0x5930) = 1;\n  }\n  bVar22 = false;\n  iVar14 = 5;\n  local_1f0 = (byte *)0x28e9b2;\n  pbVar19 = *(byte **)(param_1 + 0x1bec);\n  pbVar20 = local_1f0;\n  do {\n    pbVar21 = pbVar20;\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    pbVar21 = pbVar20 + 1;\n    bVar22 = *pbVar19 < *pbVar20;\n    bVar24 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + 1;\n    pbVar20 = pbVar21;\n  } while (bVar24);\n  bVar23 = false;\n  bVar24 = (!bVar22 && !bVar24) == bVar22;\n  if (bVar24) {\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }\n  else {\n    iVar14 = 5;\n    pbVar19 = *(byte **)(param_1 + 0x1bec);\n    pbVar20 = (byte *)0x28e304;\n    do {\n      pbVar21 = pbVar20;\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      pbVar21 = pbVar20 + 1;\n      bVar23 = *pbVar19 < *pbVar20;\n      bVar24 = *pbVar19 == *pbVar20;\n      pbVar19 = pbVar19 + 1;\n      pbVar20 = pbVar21;\n    } while (bVar24);\n    *(uint *)(param_1 + 0x5934) = ((!bVar23 && !bVar24) == bVar23) + 1;\n  }\n  if (*(char *)(param_1 + 0xd4c) == '\0') {\n    if (*(char *)(param_1 + 0xd90) == '\0') {\n      local_1c4 = &__DT_PLTGOT;\n      pcVar12 = getenv("COLLECT_NO_DEMANGLE");\n      *(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0;\n    }\n    else {\n      *(undefined1 *)(param_1 + 0x5939) = 0;\n    }\n  }\n  else {\n    pcVar12 = *(char **)(param_1 + 0xd50);\n    *(undefined1 *)(param_1 + 0x5939) = 1;\n    local_1c4 = &__DT_PLTGOT;\n    if (*pcVar12 != '\0') {\n      iVar14 = FUN_001ce8a0(pcVar12);\n      if (iVar14 == 0) {\n                    \n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }\n      FUN_001ce850(iVar14);\n    }\n  }\n  ppuVar4 = local_1c4;\n  bVar24 = false;\n  bVar22 = *(char *)(param_1 + 0x2870) == '\0';\n  if (!bVar22) {\n    pbVar19 = *(byte **)(param_1 + 0x2874);\n    iVar14 = 6;\n    pbVar20 = pbVar19;\n    pbVar21 = (byte *)((int)local_1c4 + -0xeb29e);\n    do {\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar22 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n      pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n    } while (bVar22);\n    bVar23 = false;\n    bVar24 = (!bVar24 && !bVar22) == bVar24;\n    if (bVar24) {\n      *(undefined4 *)(param_1 + 0x5a88) = 0;\n    }\n    else {\n      iVar14 = 8;\n      pbVar20 = pbVar19;\n      pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar24 = (!bVar23 && !bVar24) == bVar23;\n      if (bVar24) {\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }\n      else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }\n    }\n  }\n  if ((*(char *)(param_1 + 0x2401) != '\0') && (*(char *)(param_1 + 0x247c) == '\0')) {\n    *(undefined1 *)(param_1 + 0x247c) = 1;\n    *(undefined ***)(param_1 + 0x2480) = local_1c4 + -0x4062a;\n  }\n  if ((*(char *)(param_1 + 0x24c1) != '\0') || (*(char *)(param_1 + 0x253d) != '\0')) {\n    *(undefined1 *)(param_1 + 0x5938) = 1;\n  }\n  iVar14 = *(int *)(param_1 + 0x3de8);\n  if (0 < iVar14) {\n    if (*(int *)(param_1 + 0x3e2c) == 0) {\n      *(int *)(param_1 + 0x3e2c) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3e70) == 0) {\n      *(int *)(param_1 + 0x3e70) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3eb4) == 0) {\n      *(int *)(param_1 + 0x3eb4) = iVar14;\n    }\n  }\n  local_1d4 = &local_1bc;\n  local_1b4[0] = 0;\n  local_1ec = local_1b4;\n  local_1b8 = 0;\n  local_1bc = local_1ec;\n  if (*(char *)(param_1 + 0x4ca8) == '\0') {\n    if (*(char *)(param_1 + 0x2729) == '\0') {\n      local_1dc = local_12c;\n      local_1d0 = (undefined ***)&local_134;\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0);\n      local_1a4 = local_19c;\n                    \n      FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_18c = 1;\n      if (local_1a0 == 0) {\n                    \n        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      local_1d8 = param_1 + 0x2184;\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_1a4);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_1a4 != local_19c) {\n        FUN_001e6db0(local_1a4);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0);\n      local_188 = local_180;\n                    \n      FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_170 = 1;\n      if (local_184 == 0) {\n                    \n        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_188);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_188 != local_180) {\n        FUN_001e6db0(local_188);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0);\n      local_16c = local_164;\n                    \n      FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_154 = 1;\n      if (local_168 == 0) {\n                    \n        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_16c);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_16c != local_164) {\n        FUN_001e6db0(local_16c);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0);\n      local_1e0 = local_148;\n      local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n      local_150 = local_1e0;\n                    \n      FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_138 = 1;\n      if (local_14c == 0) {\n                    \n        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_150 != local_1e0) {\n        FUN_001e6db0(local_150);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      goto LAB_000e7f08;\n    }\n  }\n  else {\n    pcVar12 = *(char **)(param_1 + 0x4cac);\n    sVar9 = strlen(pcVar12);\n    ppuVar3 = local_1d4;\n                    \n    FUN_001ef9f0(local_1d4,0,0,pcVar12,sVar9);\n    iVar14 = FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6);\n    if (iVar14 == 0) {\n      uVar6 = local_1b8;\n      if (2 < local_1b8) {\n        uVar6 = 2;\n      }\n                    \n      FUN_001eebf0(local_1d4,0,uVar6);\n    }\nLAB_000e7f08:\n    uVar6 = 0;\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n    if (local_1b8 != 0) {\n      do {\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    \n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      } while( true );\n    }\n  }\n  ppuVar4 = local_1c4;\n  puVar17 = auStack_20c;\n  puVar18 = auStack_20c;\n  if (*(int *)(param_1 + 0x3288) != 0) {\n    local_1e8 = local_a4;\n    local_1d0 = (undefined ***)&local_134;\n    FUN_0022bca0(local_1e8);\n    local_1fc = ppuVar4 + -0xa14;\n    local_34 = 0;\n    local_2c = 0;\n    local_a4[0] = ppuVar4 + -0xa12;\n    local_30 = 0;\n    local_28 = 0;\n    local_1f4 = (undefined ***)ppuVar4[-0x9d9];\n    local_1f8 = ppuVar4[-0x9d8];\n    local_24 = 0;\n    local_20 = 0;\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n                    \n    FUN_00211450((int)local_1f4[-3] + (int)&local_134,0);\n    local_200 = ppuVar4 + -0x9d6;\n    local_134 = (undefined ***)(ppuVar4 + -0x9d3);\n    local_a4[0] = ppuVar4 + -0x9ce;\n    local_1dc = local_12c;\n                    \n    FUN_00213670(local_12c);\n                    \n    FUN_00211450(local_1e8,local_12c);\n                    \n    iVar14 = FUN_00217950(local_12c,*(undefined4 *)(param_1 + 0x3288),8);\n    puVar15 = (undefined *)((int)local_1d0 + (int)local_134[-3]);\n    if (iVar14 == 0) {\n                    \n      FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4);\n    }\n    else {\n      FUN_00210c00(puVar15,0);\n    }\n    ppuVar4 = local_1c4;\n    if ((local_90 & 5) != 0) {\n      piVar7 = __errno_location();\n      pcVar12 = strerror(*piVar7);\n      uVar11 = *(undefined4 *)(param_1 + 0x3288);\n      uVar13 = gettext(local_1c4 + -0x3f6cb);\n                    \n                    \n      FUN_00065450(uVar13,uVar11,pcVar12);\n    }\n    local_1e0 = local_148;\n    local_148[0] = 0;\n    local_14c = 0;\n    piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n    local_150 = local_1e0;\n    if (piVar7 == (int *)0x0) {\n                    \n                    \n      FUN_0022c630();\n    }\n    if ((char)piVar7[7] == '\0') {\n                    \n      FUN_0022ccc0(piVar7);\n      iVar14 = 10;\n      if (*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0) {\n        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);\n        iVar14 = (int)cVar5;\n      }\n    }\n    else {\n      iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n    }\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n                    \n    FUN_001e7cb0(local_1d0,&local_150,iVar14);\n    local_1d4 = (undefined1 **)(param_1 + 0x5a3c);\n    local_1e4 = local_1c0;\n    while ((local_90 & 5) == 0) {\n      if ((local_14c != 0) && (local_150[local_14c + -1] == '\r')) {\n        *(undefined4 *)(puVar17 + -8) = 0;\n        *(int *)(puVar17 + -0xc) = local_14c + -1;\n        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;\n        FUN_001ef780();\n      }\n      *(undefined4 *)(puVar17 + -8) = 0xc70f6907;\n      *(int *)(puVar17 + -0xc) = local_14c;\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe793a;\n      uVar6 = FUN_001e52b0();\n      local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40);\n      *(uint *)(puVar17 + -0x14) = uVar6;\n      *(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_;\n      *(uint *)(puVar17 + -0x1c) = local_1d8;\n      *(undefined1 ***)(puVar17 + -0x20) = local_1d4;\n      *(undefined4 *)(puVar17 + -0x24) = 0xe7960;\n      piVar7 = (int *)FUN_000eadf0();\n      if ((piVar7 == (int *)0x0) || (*piVar7 == 0)) {\n        *(undefined4 *)(puVar17 + -0x10) = 0x20;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;\n        puVar8 = (undefined4 *)FUN_001e5200();\n        *puVar8 = 0;\n        puVar8[1] = puVar8 + 3;\n        *(undefined4 *)(puVar17 + -4) = 0;\n        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;\n        *(undefined1 **)(puVar17 + -0xc) = local_150;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;\n        FUN_000513a0();\n        *(undefined4 *)(puVar17 + -0xc) = 1;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8;\n        *(uint *)(puVar17 + -0x14) = uVar6;\n        *(uint *)(puVar17 + -0x18) = local_1d8;\n        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;\n        *(undefined1 **)(puVar17 + -0x20) = local_1e4;\n                    \n        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;\n        FUN_000ec3b0();\n        puVar17 = puVar17 + -4;\n      }\n      ppuVar4 = local_1c4;\n      piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n      if (piVar7 == (int *)0x0) {\n                    \n                    \n        *(undefined4 *)(puVar17 + -4) = 0xe88af;\n        FUN_0022c630();\n      }\n      if ((char)piVar7[7] == '\0') {\n        *(int **)(puVar17 + -0x10) = piVar7;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;\n        FUN_0022ccc0();\n        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);\n        iVar14 = 10;\n        if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }\n      }\n      else {\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }\n      *(int *)(puVar17 + -8) = iVar14;\n      *(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_;\n      *(undefined ****)(puVar17 + -0x10) = local_1d0;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe78f7;\n      FUN_001e7cb0();\n    }\n    if (local_150 != local_1e0) {\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe7aef;\n      FUN_001e6db0();\n    }\n    ppuVar4 = local_1c4;\n    *(undefined ****)(puVar17 + -0x10) = local_1dc;\n    local_134 = (undefined ***)(local_200 + 3);\n    local_a4[0] = local_200 + 8;\n    local_12c[0] = local_1c4 + -0x9f2;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b2f;\n    FUN_00216e90();\n    *(undefined1 **)(puVar17 + -0x10) = local_f4;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b3d;\n    FUN_001e75f0();\n    local_12c[0] = ppuVar4 + -0xbd7;\n    *(undefined1 **)(puVar17 + -0x10) = local_110;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b5a;\n    FUN_001e9510();\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n    local_a4[0] = local_1fc + 2;\n    *(undefined ****)(puVar17 + -0x10) = local_1e8;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b9b;\n    FUN_0022c040();\n    puVar18 = puVar17;\n  }\n  if ((*(char *)(param_1 + 0x72d) != '\0') && (*(char *)(param_1 + 0x42e0) == '\0')) {\n    *(int *)(param_1 + 0x42e4) = (int)local_1c4 + -0x10e8db;\n  }\n  if ((*(char *)(param_1 + 0x1a25) != '\0') && (*(char *)(param_1 + 0x1fc) == '\0')) {\n    *(undefined1 *)(param_1 + 0x1fd) = 1;\n  }\n  *(int *)(puVar18 + -0x10) = param_1;\n                    \n  *(undefined4 *)(puVar18 + -0x14) = 0xe7bef;\n  FUN_000ddde0();\n  if (*(char *)(param_1 + 0x1a25) == '\0') {\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      if (*(char *)(param_1 + 0x5938) != '\0') {\n        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;\n        FUN_00065450();\n      }\n      if (*(char *)(param_1 + 0x318d) != '\0') {\n        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;\n        FUN_00065450();\n      }\n    }\n    if (*(int *)(param_1 + 0x1478) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe898c;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8994;\n      FUN_00065450();\n    }\n    if (*(int *)(param_1 + 0x1428) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c0;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c8;\n      FUN_00065450();\n    }\n    if ((*(char *)(param_1 + 0x318d) != '\0') && (*(int *)(param_1 + 0x3288) != 0)) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe7e13;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b;\n      FUN_00065450();\n    }\n  }\n  else {\n    if (*(char *)(param_1 + 0x5938) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8aea;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe892f;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8937;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x318d) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe894e;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8956;\n      FUN_00065450();\n    }\n  }\n  *(undefined4 *)(puVar18 + -0x10) = *(undefined4 *)(param_1 + 0x27ec);\n  *(undefined4 *)(puVar18 + -0x14) = 0xe7c40;\n  iVar14 = FUN_000dd760();\n  if ((iVar14 != 0) &&\n     (((*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||\n      (*(char *)(param_1 + 0x318d) != '\0')))) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f678;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8910;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8918;\n    FUN_00065450();\n  }\n  if ((*(char *)(param_1 + 0x1ae4) != '\0') &&\n     ((dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1)))) {\n    local_1cc = dVar1;\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f668;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe88cc;\n    uVar11 = gettext();\n    dVar1 = local_1cc;\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(double *)(puVar18 + -0xc) = dVar1;\n                    \n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe88de;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x5a1c) == '\0') {\n    if (*(int *)(param_1 + 0x5a10) == 0) goto LAB_000e7d53;\n  }\n  else if (*(int *)(param_1 + 0x5a10) == 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a66;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a6e;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x318d) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f63c;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a85;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a8d;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x3095) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f630;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aa4;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aac;\n    FUN_00065450();\n  }\n  if (*(int *)(param_1 + 0x593c) != 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f621;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8ac3;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8acb;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x56b9) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f614;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a28;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a30;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x2931) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f607;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a47;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a4f;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x18b1) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5fb;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe871f;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8727;\n    FUN_000654e0();\n    *(undefined1 *)(param_1 + 0x18b1) = 0;\n  }\n  bVar22 = *(int *)(param_1 + 0x5934) == 0;\n  bVar24 = !bVar22;\n  if (bVar24) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5ef;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86e7;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86ef;\n    FUN_000654e0();\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }\n  bVar24 = bVar24 && (undefined1 *)0xffffffef < puVar18 + -0x10;\n  bVar22 = bVar22 || puVar18 == (undefined1 *)0x0;\n  iVar14 = 5;\n  pbVar19 = *(byte **)(param_1 + 0x99c);\n  pbVar20 = local_1f0;\n  do {\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    bVar24 = *pbVar19 < *pbVar20;\n    bVar22 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n    pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n  } while (bVar22);\n  if ((!bVar24 && !bVar22) != bVar24) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5e5;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86af;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe86b7;\n    FUN_000654e0();\n    *(byte **)(param_1 + 0x99c) = local_1f0;\n  }\nLAB_000e7d53:\n  if (*(char *)(param_1 + 0x3344) != '\0') {\n    *(undefined1 *)(param_1 + 0x32c9) = 1;\n  }\n  if (local_1bc != local_1ec) {\n    *(undefined1 **)(puVar18 + -0x10) = local_1bc;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe7d83;\n    FUN_001e6db0();\n  }\n  return;\n}" (primitive_type "void") (function_declarator "FUN_000e74a0(int param_1)" (identifier "FUN_000e74a0") (parameter_list "(int param_1)" (( "(") (parameter_declaration "int param_1" (primitive_type "int") (identifier "param_1")) () ")"))) (compound_statement "{\n  double dVar1;\n  undefined **ppuVar2;\n  undefined1 **ppuVar3;\n  undefined **ppuVar4;\n  char cVar5;\n  uint uVar6;\n  int *piVar7;\n  undefined4 *puVar8;\n  size_t sVar9;\n  uint uVar10;\n  undefined4 uVar11;\n  char *pcVar12;\n  undefined4 uVar13;\n  int iVar14;\n  undefined *puVar15;\n  uint uVar16;\n  undefined1 *puVar17;\n  undefined1 *puVar18;\n  byte *pbVar19;\n  byte *pbVar20;\n  byte *pbVar21;\n  bool bVar22;\n  bool bVar23;\n  bool bVar24;\n  byte bVar25;\n  undefined4 uStackY_230;\n  undefined1 auStack_20c [12];\n  undefined **local_200;\n  undefined **local_1fc;\n  undefined *local_1f8;\n  undefined ***local_1f4;\n  byte *local_1f0;\n  undefined1 *local_1ec;\n  undefined ***local_1e8;\n  undefined1 *local_1e4;\n  undefined1 *local_1e0;\n  undefined ***local_1dc;\n  uint local_1d8;\n  undefined1 **local_1d4;\n  undefined ***local_1d0;\n  double local_1cc;\n  undefined **local_1c4;\n  undefined1 local_1c0 [4];\n  undefined1 *local_1bc;\n  uint local_1b8;\n  undefined1 local_1b4 [16];\n  undefined1 *local_1a4;\n  int local_1a0;\n  undefined1 local_19c [16];\n  undefined2 local_18c;\n  undefined1 *local_188;\n  int local_184;\n  undefined1 local_180 [16];\n  undefined2 local_170;\n  undefined1 *local_16c;\n  int local_168;\n  undefined1 local_164 [16];\n  undefined2 local_154;\n  undefined1 *local_150;\n  int local_14c;\n  undefined1 local_148 [16];\n  undefined2 local_138;\n  undefined ***local_134;\n  int local_130;\n  undefined **local_12c [4];\n  undefined2 local_11c;\n  undefined1 local_110 [28];\n  undefined1 local_f4 [60];\n  int aiStack_b8 [5];\n  undefined **local_a4 [5];\n  byte local_90;\n  undefined4 local_34;\n  undefined2 local_30;\n  undefined4 local_2c;\n  undefined4 local_28;\n  undefined4 local_24;\n  undefined4 local_20;\n  \n  bVar25 = 0;\n  local_1c4 = &__DT_PLTGOT;\n  if (*(char *)(param_1 + 0x3469) == '\0') {\n    if (*(char *)(param_1 + 0x34e5) != '\0') goto LAB_000e79ea;\n    if (*(char *)(param_1 + 0x3561) != '\0') {\n      bVar24 = false;\n      goto LAB_000e79f9;\n    }\n    bVar24 = false;\n    if (*(char *)(param_1 + 0x7a9) != '\0') goto LAB_000e7a0c;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x34e5) = 1;\nLAB_000e79ea:\n    bVar24 = true;\n    *(undefined1 *)(param_1 + 0x3561) = 1;\nLAB_000e79f9:\n    *(undefined1 *)(param_1 + 0x35dd) = 1;\n    if (*(char *)(param_1 + 0x7a9) != '\0') {\nLAB_000e7a0c:\n      *(undefined1 *)(param_1 + 0x1a25) = 1;\n    }\n    if (((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&\n       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)) {\n      local_1c4 = &__DT_PLTGOT;\n                    \n      FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);\n    }\n  }\n  if (*(char *)(param_1 + 0xbcd) != '\0') {\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }\n  if (*(char *)(param_1 + 0xc49) != '\0') {\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }\n  if (*(char *)(param_1 + 0xb50) == '\0') {\n    local_1cc = (double)CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d));\n    *(byte *)(param_1 + 0xb51) = *(byte *)(param_1 + 0x318d) ^ 1;\n  }\n  bVar24 = *(char *)(param_1 + 0x4f31) == '\0';\n  if (bVar24) {\n    bVar24 = *(char *)(param_1 + 0x5545) == '\0';\n    if (!bVar24) {\n      *(undefined4 *)(param_1 + 0x5930) = 2;\n    }\n  }\n  else {\n    *(undefined4 *)(param_1 + 0x5930) = 1;\n  }\n  bVar22 = false;\n  iVar14 = 5;\n  local_1f0 = (byte *)0x28e9b2;\n  pbVar19 = *(byte **)(param_1 + 0x1bec);\n  pbVar20 = local_1f0;\n  do {\n    pbVar21 = pbVar20;\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    pbVar21 = pbVar20 + 1;\n    bVar22 = *pbVar19 < *pbVar20;\n    bVar24 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + 1;\n    pbVar20 = pbVar21;\n  } while (bVar24);\n  bVar23 = false;\n  bVar24 = (!bVar22 && !bVar24) == bVar22;\n  if (bVar24) {\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }\n  else {\n    iVar14 = 5;\n    pbVar19 = *(byte **)(param_1 + 0x1bec);\n    pbVar20 = (byte *)0x28e304;\n    do {\n      pbVar21 = pbVar20;\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      pbVar21 = pbVar20 + 1;\n      bVar23 = *pbVar19 < *pbVar20;\n      bVar24 = *pbVar19 == *pbVar20;\n      pbVar19 = pbVar19 + 1;\n      pbVar20 = pbVar21;\n    } while (bVar24);\n    *(uint *)(param_1 + 0x5934) = ((!bVar23 && !bVar24) == bVar23) + 1;\n  }\n  if (*(char *)(param_1 + 0xd4c) == '\0') {\n    if (*(char *)(param_1 + 0xd90) == '\0') {\n      local_1c4 = &__DT_PLTGOT;\n      pcVar12 = getenv("COLLECT_NO_DEMANGLE");\n      *(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0;\n    }\n    else {\n      *(undefined1 *)(param_1 + 0x5939) = 0;\n    }\n  }\n  else {\n    pcVar12 = *(char **)(param_1 + 0xd50);\n    *(undefined1 *)(param_1 + 0x5939) = 1;\n    local_1c4 = &__DT_PLTGOT;\n    if (*pcVar12 != '\0') {\n      iVar14 = FUN_001ce8a0(pcVar12);\n      if (iVar14 == 0) {\n                    \n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }\n      FUN_001ce850(iVar14);\n    }\n  }\n  ppuVar4 = local_1c4;\n  bVar24 = false;\n  bVar22 = *(char *)(param_1 + 0x2870) == '\0';\n  if (!bVar22) {\n    pbVar19 = *(byte **)(param_1 + 0x2874);\n    iVar14 = 6;\n    pbVar20 = pbVar19;\n    pbVar21 = (byte *)((int)local_1c4 + -0xeb29e);\n    do {\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar22 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n      pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n    } while (bVar22);\n    bVar23 = false;\n    bVar24 = (!bVar24 && !bVar22) == bVar24;\n    if (bVar24) {\n      *(undefined4 *)(param_1 + 0x5a88) = 0;\n    }\n    else {\n      iVar14 = 8;\n      pbVar20 = pbVar19;\n      pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar24 = (!bVar23 && !bVar24) == bVar23;\n      if (bVar24) {\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }\n      else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }\n    }\n  }\n  if ((*(char *)(param_1 + 0x2401) != '\0') && (*(char *)(param_1 + 0x247c) == '\0')) {\n    *(undefined1 *)(param_1 + 0x247c) = 1;\n    *(undefined ***)(param_1 + 0x2480) = local_1c4 + -0x4062a;\n  }\n  if ((*(char *)(param_1 + 0x24c1) != '\0') || (*(char *)(param_1 + 0x253d) != '\0')) {\n    *(undefined1 *)(param_1 + 0x5938) = 1;\n  }\n  iVar14 = *(int *)(param_1 + 0x3de8);\n  if (0 < iVar14) {\n    if (*(int *)(param_1 + 0x3e2c) == 0) {\n      *(int *)(param_1 + 0x3e2c) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3e70) == 0) {\n      *(int *)(param_1 + 0x3e70) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3eb4) == 0) {\n      *(int *)(param_1 + 0x3eb4) = iVar14;\n    }\n  }\n  local_1d4 = &local_1bc;\n  local_1b4[0] = 0;\n  local_1ec = local_1b4;\n  local_1b8 = 0;\n  local_1bc = local_1ec;\n  if (*(char *)(param_1 + 0x4ca8) == '\0') {\n    if (*(char *)(param_1 + 0x2729) == '\0') {\n      local_1dc = local_12c;\n      local_1d0 = (undefined ***)&local_134;\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0);\n      local_1a4 = local_19c;\n                    \n      FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_18c = 1;\n      if (local_1a0 == 0) {\n                    \n        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      local_1d8 = param_1 + 0x2184;\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_1a4);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_1a4 != local_19c) {\n        FUN_001e6db0(local_1a4);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0);\n      local_188 = local_180;\n                    \n      FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_170 = 1;\n      if (local_184 == 0) {\n                    \n        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_188);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_188 != local_180) {\n        FUN_001e6db0(local_188);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0);\n      local_16c = local_164;\n                    \n      FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_154 = 1;\n      if (local_168 == 0) {\n                    \n        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_16c);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_16c != local_164) {\n        FUN_001e6db0(local_16c);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0);\n      local_1e0 = local_148;\n      local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n      local_150 = local_1e0;\n                    \n      FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_138 = 1;\n      if (local_14c == 0) {\n                    \n        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_150 != local_1e0) {\n        FUN_001e6db0(local_150);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      goto LAB_000e7f08;\n    }\n  }\n  else {\n    pcVar12 = *(char **)(param_1 + 0x4cac);\n    sVar9 = strlen(pcVar12);\n    ppuVar3 = local_1d4;\n                    \n    FUN_001ef9f0(local_1d4,0,0,pcVar12,sVar9);\n    iVar14 = FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6);\n    if (iVar14 == 0) {\n      uVar6 = local_1b8;\n      if (2 < local_1b8) {\n        uVar6 = 2;\n      }\n                    \n      FUN_001eebf0(local_1d4,0,uVar6);\n    }\nLAB_000e7f08:\n    uVar6 = 0;\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n    if (local_1b8 != 0) {\n      do {\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    \n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      } while( true );\n    }\n  }\n  ppuVar4 = local_1c4;\n  puVar17 = auStack_20c;\n  puVar18 = auStack_20c;\n  if (*(int *)(param_1 + 0x3288) != 0) {\n    local_1e8 = local_a4;\n    local_1d0 = (undefined ***)&local_134;\n    FUN_0022bca0(local_1e8);\n    local_1fc = ppuVar4 + -0xa14;\n    local_34 = 0;\n    local_2c = 0;\n    local_a4[0] = ppuVar4 + -0xa12;\n    local_30 = 0;\n    local_28 = 0;\n    local_1f4 = (undefined ***)ppuVar4[-0x9d9];\n    local_1f8 = ppuVar4[-0x9d8];\n    local_24 = 0;\n    local_20 = 0;\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n                    \n    FUN_00211450((int)local_1f4[-3] + (int)&local_134,0);\n    local_200 = ppuVar4 + -0x9d6;\n    local_134 = (undefined ***)(ppuVar4 + -0x9d3);\n    local_a4[0] = ppuVar4 + -0x9ce;\n    local_1dc = local_12c;\n                    \n    FUN_00213670(local_12c);\n                    \n    FUN_00211450(local_1e8,local_12c);\n                    \n    iVar14 = FUN_00217950(local_12c,*(undefined4 *)(param_1 + 0x3288),8);\n    puVar15 = (undefined *)((int)local_1d0 + (int)local_134[-3]);\n    if (iVar14 == 0) {\n                    \n      FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4);\n    }\n    else {\n      FUN_00210c00(puVar15,0);\n    }\n    ppuVar4 = local_1c4;\n    if ((local_90 & 5) != 0) {\n      piVar7 = __errno_location();\n      pcVar12 = strerror(*piVar7);\n      uVar11 = *(undefined4 *)(param_1 + 0x3288);\n      uVar13 = gettext(local_1c4 + -0x3f6cb);\n                    \n                    \n      FUN_00065450(uVar13,uVar11,pcVar12);\n    }\n    local_1e0 = local_148;\n    local_148[0] = 0;\n    local_14c = 0;\n    piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n    local_150 = local_1e0;\n    if (piVar7 == (int *)0x0) {\n                    \n                    \n      FUN_0022c630();\n    }\n    if ((char)piVar7[7] == '\0') {\n                    \n      FUN_0022ccc0(piVar7);\n      iVar14 = 10;\n      if (*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0) {\n        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);\n        iVar14 = (int)cVar5;\n      }\n    }\n    else {\n      iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n    }\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n                    \n    FUN_001e7cb0(local_1d0,&local_150,iVar14);\n    local_1d4 = (undefined1 **)(param_1 + 0x5a3c);\n    local_1e4 = local_1c0;\n    while ((local_90 & 5) == 0) {\n      if ((local_14c != 0) && (local_150[local_14c + -1] == '\r')) {\n        *(undefined4 *)(puVar17 + -8) = 0;\n        *(int *)(puVar17 + -0xc) = local_14c + -1;\n        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;\n        FUN_001ef780();\n      }\n      *(undefined4 *)(puVar17 + -8) = 0xc70f6907;\n      *(int *)(puVar17 + -0xc) = local_14c;\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe793a;\n      uVar6 = FUN_001e52b0();\n      local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40);\n      *(uint *)(puVar17 + -0x14) = uVar6;\n      *(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_;\n      *(uint *)(puVar17 + -0x1c) = local_1d8;\n      *(undefined1 ***)(puVar17 + -0x20) = local_1d4;\n      *(undefined4 *)(puVar17 + -0x24) = 0xe7960;\n      piVar7 = (int *)FUN_000eadf0();\n      if ((piVar7 == (int *)0x0) || (*piVar7 == 0)) {\n        *(undefined4 *)(puVar17 + -0x10) = 0x20;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;\n        puVar8 = (undefined4 *)FUN_001e5200();\n        *puVar8 = 0;\n        puVar8[1] = puVar8 + 3;\n        *(undefined4 *)(puVar17 + -4) = 0;\n        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;\n        *(undefined1 **)(puVar17 + -0xc) = local_150;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;\n        FUN_000513a0();\n        *(undefined4 *)(puVar17 + -0xc) = 1;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8;\n        *(uint *)(puVar17 + -0x14) = uVar6;\n        *(uint *)(puVar17 + -0x18) = local_1d8;\n        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;\n        *(undefined1 **)(puVar17 + -0x20) = local_1e4;\n                    \n        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;\n        FUN_000ec3b0();\n        puVar17 = puVar17 + -4;\n      }\n      ppuVar4 = local_1c4;\n      piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n      if (piVar7 == (int *)0x0) {\n                    \n                    \n        *(undefined4 *)(puVar17 + -4) = 0xe88af;\n        FUN_0022c630();\n      }\n      if ((char)piVar7[7] == '\0') {\n        *(int **)(puVar17 + -0x10) = piVar7;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;\n        FUN_0022ccc0();\n        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);\n        iVar14 = 10;\n        if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }\n      }\n      else {\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }\n      *(int *)(puVar17 + -8) = iVar14;\n      *(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_;\n      *(undefined ****)(puVar17 + -0x10) = local_1d0;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe78f7;\n      FUN_001e7cb0();\n    }\n    if (local_150 != local_1e0) {\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe7aef;\n      FUN_001e6db0();\n    }\n    ppuVar4 = local_1c4;\n    *(undefined ****)(puVar17 + -0x10) = local_1dc;\n    local_134 = (undefined ***)(local_200 + 3);\n    local_a4[0] = local_200 + 8;\n    local_12c[0] = local_1c4 + -0x9f2;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b2f;\n    FUN_00216e90();\n    *(undefined1 **)(puVar17 + -0x10) = local_f4;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b3d;\n    FUN_001e75f0();\n    local_12c[0] = ppuVar4 + -0xbd7;\n    *(undefined1 **)(puVar17 + -0x10) = local_110;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b5a;\n    FUN_001e9510();\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n    local_a4[0] = local_1fc + 2;\n    *(undefined ****)(puVar17 + -0x10) = local_1e8;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b9b;\n    FUN_0022c040();\n    puVar18 = puVar17;\n  }\n  if ((*(char *)(param_1 + 0x72d) != '\0') && (*(char *)(param_1 + 0x42e0) == '\0')) {\n    *(int *)(param_1 + 0x42e4) = (int)local_1c4 + -0x10e8db;\n  }\n  if ((*(char *)(param_1 + 0x1a25) != '\0') && (*(char *)(param_1 + 0x1fc) == '\0')) {\n    *(undefined1 *)(param_1 + 0x1fd) = 1;\n  }\n  *(int *)(puVar18 + -0x10) = param_1;\n                    \n  *(undefined4 *)(puVar18 + -0x14) = 0xe7bef;\n  FUN_000ddde0();\n  if (*(char *)(param_1 + 0x1a25) == '\0') {\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      if (*(char *)(param_1 + 0x5938) != '\0') {\n        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;\n        FUN_00065450();\n      }\n      if (*(char *)(param_1 + 0x318d) != '\0') {\n        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;\n        FUN_00065450();\n      }\n    }\n    if (*(int *)(param_1 + 0x1478) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe898c;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8994;\n      FUN_00065450();\n    }\n    if (*(int *)(param_1 + 0x1428) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c0;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c8;\n      FUN_00065450();\n    }\n    if ((*(char *)(param_1 + 0x318d) != '\0') && (*(int *)(param_1 + 0x3288) != 0)) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe7e13;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b;\n      FUN_00065450();\n    }\n  }\n  else {\n    if (*(char *)(param_1 + 0x5938) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8aea;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe892f;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8937;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x318d) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe894e;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8956;\n      FUN_00065450();\n    }\n  }\n  *(undefined4 *)(puVar18 + -0x10) = *(undefined4 *)(param_1 + 0x27ec);\n  *(undefined4 *)(puVar18 + -0x14) = 0xe7c40;\n  iVar14 = FUN_000dd760();\n  if ((iVar14 != 0) &&\n     (((*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||\n      (*(char *)(param_1 + 0x318d) != '\0')))) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f678;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8910;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8918;\n    FUN_00065450();\n  }\n  if ((*(char *)(param_1 + 0x1ae4) != '\0') &&\n     ((dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1)))) {\n    local_1cc = dVar1;\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f668;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe88cc;\n    uVar11 = gettext();\n    dVar1 = local_1cc;\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(double *)(puVar18 + -0xc) = dVar1;\n                    \n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe88de;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x5a1c) == '\0') {\n    if (*(int *)(param_1 + 0x5a10) == 0) goto LAB_000e7d53;\n  }\n  else if (*(int *)(param_1 + 0x5a10) == 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a66;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a6e;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x318d) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f63c;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a85;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a8d;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x3095) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f630;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aa4;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aac;\n    FUN_00065450();\n  }\n  if (*(int *)(param_1 + 0x593c) != 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f621;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8ac3;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8acb;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x56b9) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f614;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a28;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a30;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x2931) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f607;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a47;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a4f;\n    FUN_00065450();\n  }\n  if (*(char *)(param_1 + 0x18b1) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5fb;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe871f;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8727;\n    FUN_000654e0();\n    *(undefined1 *)(param_1 + 0x18b1) = 0;\n  }\n  bVar22 = *(int *)(param_1 + 0x5934) == 0;\n  bVar24 = !bVar22;\n  if (bVar24) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5ef;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86e7;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86ef;\n    FUN_000654e0();\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }\n  bVar24 = bVar24 && (undefined1 *)0xffffffef < puVar18 + -0x10;\n  bVar22 = bVar22 || puVar18 == (undefined1 *)0x0;\n  iVar14 = 5;\n  pbVar19 = *(byte **)(param_1 + 0x99c);\n  pbVar20 = local_1f0;\n  do {\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    bVar24 = *pbVar19 < *pbVar20;\n    bVar22 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n    pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n  } while (bVar22);\n  if ((!bVar24 && !bVar22) != bVar24) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5e5;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86af;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe86b7;\n    FUN_000654e0();\n    *(byte **)(param_1 + 0x99c) = local_1f0;\n  }\nLAB_000e7d53:\n  if (*(char *)(param_1 + 0x3344) != '\0') {\n    *(undefined1 *)(param_1 + 0x32c9) = 1;\n  }\n  if (local_1bc != local_1ec) {\n    *(undefined1 **)(puVar18 + -0x10) = local_1bc;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe7d83;\n    FUN_001e6db0();\n  }\n  return;\n}" ({ "{") (declaration "double dVar1;" (primitive_type "double") (identifier "dVar1") (; ";")) (declaration "undefined **ppuVar2;" (type_identifier "undefined") (pointer_declarator "**ppuVar2" (* "*") (pointer_declarator "*ppuVar2" (* "*") (identifier "ppuVar2"))) (; ";")) (declaration "undefined1 **ppuVar3;" (type_identifier "undefined1") (pointer_declarator "**ppuVar3" (* "*") (pointer_declarator "*ppuVar3" (* "*") (identifier "ppuVar3"))) (; ";")) (declaration "undefined **ppuVar4;" (type_identifier "undefined") (pointer_declarator "**ppuVar4" (* "*") (pointer_declarator "*ppuVar4" (* "*") (identifier "ppuVar4"))) (; ";")) (declaration "char cVar5;" (primitive_type "char") (identifier "cVar5") (; ";")) (declaration "uint uVar6;" (type_identifier "uint") (identifier "uVar6") (; ";")) (declaration "int *piVar7;" (primitive_type "int") (pointer_declarator "*piVar7" (* "*") (identifier "piVar7")) (; ";")) (declaration "undefined4 *puVar8;" (type_identifier "undefined4") (pointer_declarator "*puVar8" (* "*") (identifier "puVar8")) (; ";")) (declaration "size_t sVar9;" (primitive_type "size_t") (identifier "sVar9") (; ";")) (declaration "uint uVar10;" (type_identifier "uint") (identifier "uVar10") (; ";")) (declaration "undefined4 uVar11;" (type_identifier "undefined4") (identifier "uVar11") (; ";")) (declaration "char *pcVar12;" (primitive_type "char") (pointer_declarator "*pcVar12" (* "*") (identifier "pcVar12")) (; ";")) (declaration "undefined4 uVar13;" (type_identifier "undefined4") (identifier "uVar13") (; ";")) (declaration "int iVar14;" (primitive_type "int") (identifier "iVar14") (; ";")) (declaration "undefined *puVar15;" (type_identifier "undefined") (pointer_declarator "*puVar15" (* "*") (identifier "puVar15")) (; ";")) (declaration "uint uVar16;" (type_identifier "uint") (identifier "uVar16") (; ";")) (declaration "undefined1 *puVar17;" (type_identifier "undefined1") (pointer_declarator "*puVar17" (* "*") (identifier "puVar17")) (; ";")) (declaration "undefined1 *puVar18;" (type_identifier "undefined1") (pointer_declarator "*puVar18" (* "*") (identifier "puVar18")) (; ";")) (declaration "byte *pbVar19;" (type_identifier "byte") (pointer_declarator "*pbVar19" (* "*") (identifier "pbVar19")) (; ";")) (declaration "byte *pbVar20;" (type_identifier "byte") (pointer_declarator "*pbVar20" (* "*") (identifier "pbVar20")) (; ";")) (declaration "byte *pbVar21;" (type_identifier "byte") (pointer_declarator "*pbVar21" (* "*") (identifier "pbVar21")) (; ";")) (declaration "bool bVar22;" (primitive_type "bool") (identifier "bVar22") (; ";")) (declaration "bool bVar23;" (primitive_type "bool") (identifier "bVar23") (; ";")) (declaration "bool bVar24;" (primitive_type "bool") (identifier "bVar24") (; ";")) (declaration "byte bVar25;" (type_identifier "byte") (identifier "bVar25") (; ";")) (declaration "undefined4 uStackY_230;" (type_identifier "undefined4") (identifier "uStackY_230") (; ";")) (declaration "undefined1 auStack_20c [12];" (type_identifier "undefined1") (array_declarator "auStack_20c [12]" (identifier "auStack_20c") ([ "[") (number_literal "12") (] "]")) (; ";")) (declaration "undefined **local_200;" (type_identifier "undefined") (pointer_declarator "**local_200" (* "*") (pointer_declarator "*local_200" (* "*") (identifier "local_200"))) (; ";")) (declaration "undefined **local_1fc;" (type_identifier "undefined") (pointer_declarator "**local_1fc" (* "*") (pointer_declarator "*local_1fc" (* "*") (identifier "local_1fc"))) (; ";")) (declaration "undefined *local_1f8;" (type_identifier "undefined") (pointer_declarator "*local_1f8" (* "*") (identifier "local_1f8")) (; ";")) (declaration "undefined ***local_1f4;" (type_identifier "undefined") (pointer_declarator "***local_1f4" (* "*") (pointer_declarator "**local_1f4" (* "*") (pointer_declarator "*local_1f4" (* "*") (identifier "local_1f4")))) (; ";")) (declaration "byte *local_1f0;" (type_identifier "byte") (pointer_declarator "*local_1f0" (* "*") (identifier "local_1f0")) (; ";")) (declaration "undefined1 *local_1ec;" (type_identifier "undefined1") (pointer_declarator "*local_1ec" (* "*") (identifier "local_1ec")) (; ";")) (declaration "undefined ***local_1e8;" (type_identifier "undefined") (pointer_declarator "***local_1e8" (* "*") (pointer_declarator "**local_1e8" (* "*") (pointer_declarator "*local_1e8" (* "*") (identifier "local_1e8")))) (; ";")) (declaration "undefined1 *local_1e4;" (type_identifier "undefined1") (pointer_declarator "*local_1e4" (* "*") (identifier "local_1e4")) (; ";")) (declaration "undefined1 *local_1e0;" (type_identifier "undefined1") (pointer_declarator "*local_1e0" (* "*") (identifier "local_1e0")) (; ";")) (declaration "undefined ***local_1dc;" (type_identifier "undefined") (pointer_declarator "***local_1dc" (* "*") (pointer_declarator "**local_1dc" (* "*") (pointer_declarator "*local_1dc" (* "*") (identifier "local_1dc")))) (; ";")) (declaration "uint local_1d8;" (type_identifier "uint") (identifier "local_1d8") (; ";")) (declaration "undefined1 **local_1d4;" (type_identifier "undefined1") (pointer_declarator "**local_1d4" (* "*") (pointer_declarator "*local_1d4" (* "*") (identifier "local_1d4"))) (; ";")) (declaration "undefined ***local_1d0;" (type_identifier "undefined") (pointer_declarator "***local_1d0" (* "*") (pointer_declarator "**local_1d0" (* "*") (pointer_declarator "*local_1d0" (* "*") (identifier "local_1d0")))) (; ";")) (declaration "double local_1cc;" (primitive_type "double") (identifier "local_1cc") (; ";")) (declaration "undefined **local_1c4;" (type_identifier "undefined") (pointer_declarator "**local_1c4" (* "*") (pointer_declarator "*local_1c4" (* "*") (identifier "local_1c4"))) (; ";")) (declaration "undefined1 local_1c0 [4];" (type_identifier "undefined1") (array_declarator "local_1c0 [4]" (identifier "local_1c0") ([ "[") (number_literal "4") (] "]")) (; ";")) (declaration "undefined1 *local_1bc;" (type_identifier "undefined1") (pointer_declarator "*local_1bc" (* "*") (identifier "local_1bc")) (; ";")) (declaration "uint local_1b8;" (type_identifier "uint") (identifier "local_1b8") (; ";")) (declaration "undefined1 local_1b4 [16];" (type_identifier "undefined1") (array_declarator "local_1b4 [16]" (identifier "local_1b4") ([ "[") (number_literal "16") (] "]")) (; ";")) (declaration "undefined1 *local_1a4;" (type_identifier "undefined1") (pointer_declarator "*local_1a4" (* "*") (identifier "local_1a4")) (; ";")) (declaration "int local_1a0;" (primitive_type "int") (identifier "local_1a0") (; ";")) (declaration "undefined1 local_19c [16];" (type_identifier "undefined1") (array_declarator "local_19c [16]" (identifier "local_19c") ([ "[") (number_literal "16") (] "]")) (; ";")) (declaration "undefined2 local_18c;" (type_identifier "undefined2") (identifier "local_18c") (; ";")) (declaration "undefined1 *local_188;" (type_identifier "undefined1") (pointer_declarator "*local_188" (* "*") (identifier "local_188")) (; ";")) (declaration "int local_184;" (primitive_type "int") (identifier "local_184") (; ";")) (declaration "undefined1 local_180 [16];" (type_identifier "undefined1") (array_declarator "local_180 [16]" (identifier "local_180") ([ "[") (number_literal "16") (] "]")) (; ";")) (declaration "undefined2 local_170;" (type_identifier "undefined2") (identifier "local_170") (; ";")) (declaration "undefined1 *local_16c;" (type_identifier "undefined1") (pointer_declarator "*local_16c" (* "*") (identifier "local_16c")) (; ";")) (declaration "int local_168;" (primitive_type "int") (identifier "local_168") (; ";")) (declaration "undefined1 local_164 [16];" (type_identifier "undefined1") (array_declarator "local_164 [16]" (identifier "local_164") ([ "[") (number_literal "16") (] "]")) (; ";")) (declaration "undefined2 local_154;" (type_identifier "undefined2") (identifier "local_154") (; ";")) (declaration "undefined1 *local_150;" (type_identifier "undefined1") (pointer_declarator "*local_150" (* "*") (identifier "local_150")) (; ";")) (declaration "int local_14c;" (primitive_type "int") (identifier "local_14c") (; ";")) (declaration "undefined1 local_148 [16];" (type_identifier "undefined1") (array_declarator "local_148 [16]" (identifier "local_148") ([ "[") (number_literal "16") (] "]")) (; ";")) (declaration "undefined2 local_138;" (type_identifier "undefined2") (identifier "local_138") (; ";")) (declaration "undefined ***local_134;" (type_identifier "undefined") (pointer_declarator "***local_134" (* "*") (pointer_declarator "**local_134" (* "*") (pointer_declarator "*local_134" (* "*") (identifier "local_134")))) (; ";")) (declaration "int local_130;" (primitive_type "int") (identifier "local_130") (; ";")) (declaration "undefined **local_12c [4];" (type_identifier "undefined") (pointer_declarator "**local_12c [4]" (* "*") (pointer_declarator "*local_12c [4]" (* "*") (array_declarator "local_12c [4]" (identifier "local_12c") ([ "[") (number_literal "4") (] "]")))) (; ";")) (declaration "undefined2 local_11c;" (type_identifier "undefined2") (identifier "local_11c") (; ";")) (declaration "undefined1 local_110 [28];" (type_identifier "undefined1") (array_declarator "local_110 [28]" (identifier "local_110") ([ "[") (number_literal "28") (] "]")) (; ";")) (declaration "undefined1 local_f4 [60];" (type_identifier "undefined1") (array_declarator "local_f4 [60]" (identifier "local_f4") ([ "[") (number_literal "60") (] "]")) (; ";")) (declaration "int aiStack_b8 [5];" (primitive_type "int") (array_declarator "aiStack_b8 [5]" (identifier "aiStack_b8") ([ "[") (number_literal "5") (] "]")) (; ";")) (declaration "undefined **local_a4 [5];" (type_identifier "undefined") (pointer_declarator "**local_a4 [5]" (* "*") (pointer_declarator "*local_a4 [5]" (* "*") (array_declarator "local_a4 [5]" (identifier "local_a4") ([ "[") (number_literal "5") (] "]")))) (; ";")) (declaration "byte local_90;" (type_identifier "byte") (identifier "local_90") (; ";")) (declaration "undefined4 local_34;" (type_identifier "undefined4") (identifier "local_34") (; ";")) (declaration "undefined2 local_30;" (type_identifier "undefined2") (identifier "local_30") (; ";")) (declaration "undefined4 local_2c;" (type_identifier "undefined4") (identifier "local_2c") (; ";")) (declaration "undefined4 local_28;" (type_identifier "undefined4") (identifier "local_28") (; ";")) (declaration "undefined4 local_24;" (type_identifier "undefined4") (identifier "local_24") (; ";")) (declaration "undefined4 local_20;" (type_identifier "undefined4") (identifier "local_20") (; ";")) (expression_statement "bVar25 = 0;" (assignment_expression "bVar25 = 0" (identifier "bVar25") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_1c4 = &__DT_PLTGOT;" (assignment_expression "local_1c4 = &__DT_PLTGOT" (identifier "local_1c4") (= "=") (pointer_expression "&__DT_PLTGOT" (& "&") (identifier "__DT_PLTGOT"))) (; ";")) (if_statement "if (*(char *)(param_1 + 0x3469) == '\0') {\n    if (*(char *)(param_1 + 0x34e5) != '\0') goto LAB_000e79ea;\n    if (*(char *)(param_1 + 0x3561) != '\0') {\n      bVar24 = false;\n      goto LAB_000e79f9;\n    }\n    bVar24 = false;\n    if (*(char *)(param_1 + 0x7a9) != '\0') goto LAB_000e7a0c;\n  }\n  else {\n    *(undefined1 *)(param_1 + 0x34e5) = 1;\nLAB_000e79ea:\n    bVar24 = true;\n    *(undefined1 *)(param_1 + 0x3561) = 1;\nLAB_000e79f9:\n    *(undefined1 *)(param_1 + 0x35dd) = 1;\n    if (*(char *)(param_1 + 0x7a9) != '\0') {\nLAB_000e7a0c:\n      *(undefined1 *)(param_1 + 0x1a25) = 1;\n    }\n    if (((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&\n       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)) {\n      local_1c4 = &__DT_PLTGOT;\n                    \n      FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);\n    }\n  }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x3469) == '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x3469) == '\0'" (pointer_expression "*(char *)(param_1 + 0x3469)" (* "*") (cast_expression "(char *)(param_1 + 0x3469)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x3469)" (( "(") (binary_expression "param_1 + 0x3469" (identifier "param_1") (+ "+") (number_literal "0x3469")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    if (*(char *)(param_1 + 0x34e5) != '\0') goto LAB_000e79ea;\n    if (*(char *)(param_1 + 0x3561) != '\0') {\n      bVar24 = false;\n      goto LAB_000e79f9;\n    }\n    bVar24 = false;\n    if (*(char *)(param_1 + 0x7a9) != '\0') goto LAB_000e7a0c;\n  }" ({ "{") (if_statement "if (*(char *)(param_1 + 0x34e5) != '\0') goto LAB_000e79ea;" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x34e5) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x34e5) != '\0'" (pointer_expression "*(char *)(param_1 + 0x34e5)" (* "*") (cast_expression "(char *)(param_1 + 0x34e5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x34e5)" (( "(") (binary_expression "param_1 + 0x34e5" (identifier "param_1") (+ "+") (number_literal "0x34e5")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_000e79ea;" (goto "goto") (statement_identifier "LAB_000e79ea") (; ";"))) (if_statement "if (*(char *)(param_1 + 0x3561) != '\0') {\n      bVar24 = false;\n      goto LAB_000e79f9;\n    }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x3561) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x3561) != '\0'" (pointer_expression "*(char *)(param_1 + 0x3561)" (* "*") (cast_expression "(char *)(param_1 + 0x3561)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x3561)" (( "(") (binary_expression "param_1 + 0x3561" (identifier "param_1") (+ "+") (number_literal "0x3561")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      bVar24 = false;\n      goto LAB_000e79f9;\n    }" ({ "{") (expression_statement "bVar24 = false;" (assignment_expression "bVar24 = false" (identifier "bVar24") (= "=") (false "false")) (; ";")) (goto_statement "goto LAB_000e79f9;" (goto "goto") (statement_identifier "LAB_000e79f9") (; ";")) (} "}"))) (expression_statement "bVar24 = false;" (assignment_expression "bVar24 = false" (identifier "bVar24") (= "=") (false "false")) (; ";")) (if_statement "if (*(char *)(param_1 + 0x7a9) != '\0') goto LAB_000e7a0c;" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x7a9) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x7a9) != '\0'" (pointer_expression "*(char *)(param_1 + 0x7a9)" (* "*") (cast_expression "(char *)(param_1 + 0x7a9)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x7a9)" (( "(") (binary_expression "param_1 + 0x7a9" (identifier "param_1") (+ "+") (number_literal "0x7a9")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_000e7a0c;" (goto "goto") (statement_identifier "LAB_000e7a0c") (; ";"))) (} "}")) (else_clause "else {\n    *(undefined1 *)(param_1 + 0x34e5) = 1;\nLAB_000e79ea:\n    bVar24 = true;\n    *(undefined1 *)(param_1 + 0x3561) = 1;\nLAB_000e79f9:\n    *(undefined1 *)(param_1 + 0x35dd) = 1;\n    if (*(char *)(param_1 + 0x7a9) != '\0') {\nLAB_000e7a0c:\n      *(undefined1 *)(param_1 + 0x1a25) = 1;\n    }\n    if (((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&\n       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)) {\n      local_1c4 = &__DT_PLTGOT;\n                    \n      FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);\n    }\n  }" (else "else") (compound_statement "{\n    *(undefined1 *)(param_1 + 0x34e5) = 1;\nLAB_000e79ea:\n    bVar24 = true;\n    *(undefined1 *)(param_1 + 0x3561) = 1;\nLAB_000e79f9:\n    *(undefined1 *)(param_1 + 0x35dd) = 1;\n    if (*(char *)(param_1 + 0x7a9) != '\0') {\nLAB_000e7a0c:\n      *(undefined1 *)(param_1 + 0x1a25) = 1;\n    }\n    if (((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&\n       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)) {\n      local_1c4 = &__DT_PLTGOT;\n                    \n      FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);\n    }\n  }" ({ "{") (expression_statement "*(undefined1 *)(param_1 + 0x34e5) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x34e5) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x34e5)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x34e5)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x34e5)" (( "(") (binary_expression "param_1 + 0x34e5" (identifier "param_1") (+ "+") (number_literal "0x34e5")) () ")")))) (= "=") (number_literal "1")) (; ";")) (labeled_statement "LAB_000e79ea:\n    bVar24 = true;" (statement_identifier "LAB_000e79ea") (: ":") (expression_statement "bVar24 = true;" (assignment_expression "bVar24 = true" (identifier "bVar24") (= "=") (true "true")) (; ";"))) (expression_statement "*(undefined1 *)(param_1 + 0x3561) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x3561) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x3561)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x3561)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x3561)" (( "(") (binary_expression "param_1 + 0x3561" (identifier "param_1") (+ "+") (number_literal "0x3561")) () ")")))) (= "=") (number_literal "1")) (; ";")) (labeled_statement "LAB_000e79f9:\n    *(undefined1 *)(param_1 + 0x35dd) = 1;" (statement_identifier "LAB_000e79f9") (: ":") (expression_statement "*(undefined1 *)(param_1 + 0x35dd) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x35dd) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x35dd)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x35dd)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x35dd)" (( "(") (binary_expression "param_1 + 0x35dd" (identifier "param_1") (+ "+") (number_literal "0x35dd")) () ")")))) (= "=") (number_literal "1")) (; ";"))) (if_statement "if (*(char *)(param_1 + 0x7a9) != '\0') {\nLAB_000e7a0c:\n      *(undefined1 *)(param_1 + 0x1a25) = 1;\n    }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x7a9) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x7a9) != '\0'" (pointer_expression "*(char *)(param_1 + 0x7a9)" (* "*") (cast_expression "(char *)(param_1 + 0x7a9)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x7a9)" (( "(") (binary_expression "param_1 + 0x7a9" (identifier "param_1") (+ "+") (number_literal "0x7a9")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\nLAB_000e7a0c:\n      *(undefined1 *)(param_1 + 0x1a25) = 1;\n    }" ({ "{") (labeled_statement "LAB_000e7a0c:\n      *(undefined1 *)(param_1 + 0x1a25) = 1;" (statement_identifier "LAB_000e7a0c") (: ":") (expression_statement "*(undefined1 *)(param_1 + 0x1a25) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x1a25) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x1a25)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x1a25)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1a25)" (( "(") (binary_expression "param_1 + 0x1a25" (identifier "param_1") (+ "+") (number_literal "0x1a25")) () ")")))) (= "=") (number_literal "1")) (; ";"))) (} "}"))) (if_statement "if (((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&\n       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)) {\n      local_1c4 = &__DT_PLTGOT;\n                    \n      FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);\n    }" (if "if") (parenthesized_expression "(((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&\n       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24))" (( "(") (binary_expression "((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&\n       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)" (parenthesized_expression "((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0'))" (( "(") (binary_expression "(*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')" (parenthesized_expression "(*(char *)(param_1 + 0x3469) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x3469) != '\0'" (pointer_expression "*(char *)(param_1 + 0x3469)" (* "*") (cast_expression "(char *)(param_1 + 0x3469)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x3469)" (( "(") (binary_expression "param_1 + 0x3469" (identifier "param_1") (+ "+") (number_literal "0x3469")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(*(char *)(param_1 + 0x318d) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x318d) != '\0'" (pointer_expression "*(char *)(param_1 + 0x318d)" (* "*") (cast_expression "(char *)(param_1 + 0x318d)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x318d)" (( "(") (binary_expression "param_1 + 0x318d" (identifier "param_1") (+ "+") (number_literal "0x318d")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)" (( "(") (comma_expression "*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24" (assignment_expression "*(undefined1 *)(param_1 + 0x3469) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x3469)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x3469)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x3469)" (( "(") (binary_expression "param_1 + 0x3469" (identifier "param_1") (+ "+") (number_literal "0x3469")) () ")")))) (= "=") (number_literal "0")) (, ",") (unary_expression "!bVar24" (! "!") (identifier "bVar24"))) () ")"))) () ")")) (compound_statement "{\n      local_1c4 = &__DT_PLTGOT;\n                    \n      FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);\n    }" ({ "{") (expression_statement "local_1c4 = &__DT_PLTGOT;" (assignment_expression "local_1c4 = &__DT_PLTGOT" (identifier "local_1c4") (= "=") (pointer_expression "&__DT_PLTGOT" (& "&") (identifier "__DT_PLTGOT"))) (; ";")) (expression_statement "FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);" (call_expression "FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1)" (identifier "FUN_00069d00") (argument_list "("../../gold/options.cc",0x453,"finalize",param_1)" (( "(") (string_literal ""../../gold/options.cc"" (" """) (string_content "../../gold/options.cc") (" """)) (, ",") (number_literal "0x453") (, ",") (string_literal ""finalize"" (" """) (string_content "finalize") (" """)) (, ",") (identifier "param_1") () ")"))) (; ";")) (} "}"))) (} "}")))) (if_statement "if (*(char *)(param_1 + 0xbcd) != '\0') {\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0xbcd) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0xbcd) != '\0'" (pointer_expression "*(char *)(param_1 + 0xbcd)" (* "*") (cast_expression "(char *)(param_1 + 0xbcd)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xbcd)" (( "(") (binary_expression "param_1 + 0xbcd" (identifier "param_1") (+ "+") (number_literal "0xbcd")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }" ({ "{") (expression_statement "*(undefined1 *)(param_1 + 0xb51) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0xb51) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0xb51)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0xb51)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xb51)" (( "(") (binary_expression "param_1 + 0xb51" (identifier "param_1") (+ "+") (number_literal "0xb51")) () ")")))) (= "=") (number_literal "1")) (; ";")) (} "}"))) (if_statement "if (*(char *)(param_1 + 0xc49) != '\0') {\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0xc49) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0xc49) != '\0'" (pointer_expression "*(char *)(param_1 + 0xc49)" (* "*") (cast_expression "(char *)(param_1 + 0xc49)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xc49)" (( "(") (binary_expression "param_1 + 0xc49" (identifier "param_1") (+ "+") (number_literal "0xc49")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    *(undefined1 *)(param_1 + 0xb51) = 1;\n  }" ({ "{") (expression_statement "*(undefined1 *)(param_1 + 0xb51) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0xb51) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0xb51)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0xb51)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xb51)" (( "(") (binary_expression "param_1 + 0xb51" (identifier "param_1") (+ "+") (number_literal "0xb51")) () ")")))) (= "=") (number_literal "1")) (; ";")) (} "}"))) (if_statement "if (*(char *)(param_1 + 0xb50) == '\0') {\n    local_1cc = (double)CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d));\n    *(byte *)(param_1 + 0xb51) = *(byte *)(param_1 + 0x318d) ^ 1;\n  }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0xb50) == '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0xb50) == '\0'" (pointer_expression "*(char *)(param_1 + 0xb50)" (* "*") (cast_expression "(char *)(param_1 + 0xb50)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xb50)" (( "(") (binary_expression "param_1 + 0xb50" (identifier "param_1") (+ "+") (number_literal "0xb50")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    local_1cc = (double)CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d));\n    *(byte *)(param_1 + 0xb51) = *(byte *)(param_1 + 0x318d) ^ 1;\n  }" ({ "{") (expression_statement "local_1cc = (double)CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d));" (assignment_expression "local_1cc = (double)CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d))" (identifier "local_1cc") (= "=") (cast_expression "(double)CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d))" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d))" (identifier "CONCAT71") (argument_list "(local_1cc._1_7_,*(byte *)(param_1 + 0x318d))" (( "(") (field_expression "local_1cc._1_7_" (identifier "local_1cc") (. ".") (field_identifier "_1_7_")) (, ",") (pointer_expression "*(byte *)(param_1 + 0x318d)" (* "*") (cast_expression "(byte *)(param_1 + 0x318d)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x318d)" (( "(") (binary_expression "param_1 + 0x318d" (identifier "param_1") (+ "+") (number_literal "0x318d")) () ")")))) () ")"))))) (; ";")) (expression_statement "*(byte *)(param_1 + 0xb51) = *(byte *)(param_1 + 0x318d) ^ 1;" (assignment_expression "*(byte *)(param_1 + 0xb51) = *(byte *)(param_1 + 0x318d) ^ 1" (pointer_expression "*(byte *)(param_1 + 0xb51)" (* "*") (cast_expression "(byte *)(param_1 + 0xb51)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xb51)" (( "(") (binary_expression "param_1 + 0xb51" (identifier "param_1") (+ "+") (number_literal "0xb51")) () ")")))) (= "=") (binary_expression "*(byte *)(param_1 + 0x318d) ^ 1" (pointer_expression "*(byte *)(param_1 + 0x318d)" (* "*") (cast_expression "(byte *)(param_1 + 0x318d)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x318d)" (( "(") (binary_expression "param_1 + 0x318d" (identifier "param_1") (+ "+") (number_literal "0x318d")) () ")")))) (^ "^") (number_literal "1"))) (; ";")) (} "}"))) (expression_statement "bVar24 = *(char *)(param_1 + 0x4f31) == '\0';" (assignment_expression "bVar24 = *(char *)(param_1 + 0x4f31) == '\0'" (identifier "bVar24") (= "=") (binary_expression "*(char *)(param_1 + 0x4f31) == '\0'" (pointer_expression "*(char *)(param_1 + 0x4f31)" (* "*") (cast_expression "(char *)(param_1 + 0x4f31)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x4f31)" (( "(") (binary_expression "param_1 + 0x4f31" (identifier "param_1") (+ "+") (number_literal "0x4f31")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'")))) (; ";")) (if_statement "if (bVar24) {\n    bVar24 = *(char *)(param_1 + 0x5545) == '\0';\n    if (!bVar24) {\n      *(undefined4 *)(param_1 + 0x5930) = 2;\n    }\n  }\n  else {\n    *(undefined4 *)(param_1 + 0x5930) = 1;\n  }" (if "if") (parenthesized_expression "(bVar24)" (( "(") (identifier "bVar24") () ")")) (compound_statement "{\n    bVar24 = *(char *)(param_1 + 0x5545) == '\0';\n    if (!bVar24) {\n      *(undefined4 *)(param_1 + 0x5930) = 2;\n    }\n  }" ({ "{") (expression_statement "bVar24 = *(char *)(param_1 + 0x5545) == '\0';" (assignment_expression "bVar24 = *(char *)(param_1 + 0x5545) == '\0'" (identifier "bVar24") (= "=") (binary_expression "*(char *)(param_1 + 0x5545) == '\0'" (pointer_expression "*(char *)(param_1 + 0x5545)" (* "*") (cast_expression "(char *)(param_1 + 0x5545)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x5545)" (( "(") (binary_expression "param_1 + 0x5545" (identifier "param_1") (+ "+") (number_literal "0x5545")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'")))) (; ";")) (if_statement "if (!bVar24) {\n      *(undefined4 *)(param_1 + 0x5930) = 2;\n    }" (if "if") (parenthesized_expression "(!bVar24)" (( "(") (unary_expression "!bVar24" (! "!") (identifier "bVar24")) () ")")) (compound_statement "{\n      *(undefined4 *)(param_1 + 0x5930) = 2;\n    }" ({ "{") (expression_statement "*(undefined4 *)(param_1 + 0x5930) = 2;" (assignment_expression "*(undefined4 *)(param_1 + 0x5930) = 2" (pointer_expression "*(undefined4 *)(param_1 + 0x5930)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x5930)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x5930)" (( "(") (binary_expression "param_1 + 0x5930" (identifier "param_1") (+ "+") (number_literal "0x5930")) () ")")))) (= "=") (number_literal "2")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n    *(undefined4 *)(param_1 + 0x5930) = 1;\n  }" (else "else") (compound_statement "{\n    *(undefined4 *)(param_1 + 0x5930) = 1;\n  }" ({ "{") (expression_statement "*(undefined4 *)(param_1 + 0x5930) = 1;" (assignment_expression "*(undefined4 *)(param_1 + 0x5930) = 1" (pointer_expression "*(undefined4 *)(param_1 + 0x5930)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x5930)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x5930)" (( "(") (binary_expression "param_1 + 0x5930" (identifier "param_1") (+ "+") (number_literal "0x5930")) () ")")))) (= "=") (number_literal "1")) (; ";")) (} "}")))) (expression_statement "bVar22 = false;" (assignment_expression "bVar22 = false" (identifier "bVar22") (= "=") (false "false")) (; ";")) (expression_statement "iVar14 = 5;" (assignment_expression "iVar14 = 5" (identifier "iVar14") (= "=") (number_literal "5")) (; ";")) (expression_statement "local_1f0 = (byte *)0x28e9b2;" (assignment_expression "local_1f0 = (byte *)0x28e9b2" (identifier "local_1f0") (= "=") (cast_expression "(byte *)0x28e9b2" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x28e9b2"))) (; ";")) (expression_statement "pbVar19 = *(byte **)(param_1 + 0x1bec);" (assignment_expression "pbVar19 = *(byte **)(param_1 + 0x1bec)" (identifier "pbVar19") (= "=") (pointer_expression "*(byte **)(param_1 + 0x1bec)" (* "*") (cast_expression "(byte **)(param_1 + 0x1bec)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x1bec)" (( "(") (binary_expression "param_1 + 0x1bec" (identifier "param_1") (+ "+") (number_literal "0x1bec")) () ")"))))) (; ";")) (expression_statement "pbVar20 = local_1f0;" (assignment_expression "pbVar20 = local_1f0" (identifier "pbVar20") (= "=") (identifier "local_1f0")) (; ";")) (do_statement "do {\n    pbVar21 = pbVar20;\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    pbVar21 = pbVar20 + 1;\n    bVar22 = *pbVar19 < *pbVar20;\n    bVar24 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + 1;\n    pbVar20 = pbVar21;\n  } while (bVar24);" (do "do") (compound_statement "{\n    pbVar21 = pbVar20;\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    pbVar21 = pbVar20 + 1;\n    bVar22 = *pbVar19 < *pbVar20;\n    bVar24 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + 1;\n    pbVar20 = pbVar21;\n  }" ({ "{") (expression_statement "pbVar21 = pbVar20;" (assignment_expression "pbVar21 = pbVar20" (identifier "pbVar21") (= "=") (identifier "pbVar20")) (; ";")) (if_statement "if (iVar14 == 0) break;" (if "if") (parenthesized_expression "(iVar14 == 0)" (( "(") (binary_expression "iVar14 == 0" (identifier "iVar14") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" (identifier "iVar14") (= "=") (binary_expression "iVar14 + -1" (identifier "iVar14") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "pbVar21 = pbVar20 + 1;" (assignment_expression "pbVar21 = pbVar20 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar20 + 1" (identifier "pbVar20") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "bVar22 = *pbVar19 < *pbVar20;" (assignment_expression "bVar22 = *pbVar19 < *pbVar20" (identifier "bVar22") (= "=") (binary_expression "*pbVar19 < *pbVar20" (pointer_expression "*pbVar19" (* "*") (identifier "pbVar19")) (< "<") (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20")))) (; ";")) (expression_statement "bVar24 = *pbVar19 == *pbVar20;" (assignment_expression "bVar24 = *pbVar19 == *pbVar20" (identifier "bVar24") (= "=") (binary_expression "*pbVar19 == *pbVar20" (pointer_expression "*pbVar19" (* "*") (identifier "pbVar19")) (== "==") (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20")))) (; ";")) (expression_statement "pbVar19 = pbVar19 + 1;" (assignment_expression "pbVar19 = pbVar19 + 1" (identifier "pbVar19") (= "=") (binary_expression "pbVar19 + 1" (identifier "pbVar19") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar20 = pbVar21;" (assignment_expression "pbVar20 = pbVar21" (identifier "pbVar20") (= "=") (identifier "pbVar21")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar24)" (( "(") (identifier "bVar24") () ")")) (; ";")) (expression_statement "bVar23 = false;" (assignment_expression "bVar23 = false" (identifier "bVar23") (= "=") (false "false")) (; ";")) (expression_statement "bVar24 = (!bVar22 && !bVar24) == bVar22;" (assignment_expression "bVar24 = (!bVar22 && !bVar24) == bVar22" (identifier "bVar24") (= "=") (binary_expression "(!bVar22 && !bVar24) == bVar22" (parenthesized_expression "(!bVar22 && !bVar24)" (( "(") (binary_expression "!bVar22 && !bVar24" (unary_expression "!bVar22" (! "!") (identifier "bVar22")) (&& "&&") (unary_expression "!bVar24" (! "!") (identifier "bVar24"))) () ")")) (== "==") (identifier "bVar22"))) (; ";")) (if_statement "if (bVar24) {\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }\n  else {\n    iVar14 = 5;\n    pbVar19 = *(byte **)(param_1 + 0x1bec);\n    pbVar20 = (byte *)0x28e304;\n    do {\n      pbVar21 = pbVar20;\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      pbVar21 = pbVar20 + 1;\n      bVar23 = *pbVar19 < *pbVar20;\n      bVar24 = *pbVar19 == *pbVar20;\n      pbVar19 = pbVar19 + 1;\n      pbVar20 = pbVar21;\n    } while (bVar24);\n    *(uint *)(param_1 + 0x5934) = ((!bVar23 && !bVar24) == bVar23) + 1;\n  }" (if "if") (parenthesized_expression "(bVar24)" (( "(") (identifier "bVar24") () ")")) (compound_statement "{\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }" ({ "{") (expression_statement "*(undefined4 *)(param_1 + 0x5934) = 0;" (assignment_expression "*(undefined4 *)(param_1 + 0x5934) = 0" (pointer_expression "*(undefined4 *)(param_1 + 0x5934)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x5934)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x5934)" (( "(") (binary_expression "param_1 + 0x5934" (identifier "param_1") (+ "+") (number_literal "0x5934")) () ")")))) (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n    iVar14 = 5;\n    pbVar19 = *(byte **)(param_1 + 0x1bec);\n    pbVar20 = (byte *)0x28e304;\n    do {\n      pbVar21 = pbVar20;\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      pbVar21 = pbVar20 + 1;\n      bVar23 = *pbVar19 < *pbVar20;\n      bVar24 = *pbVar19 == *pbVar20;\n      pbVar19 = pbVar19 + 1;\n      pbVar20 = pbVar21;\n    } while (bVar24);\n    *(uint *)(param_1 + 0x5934) = ((!bVar23 && !bVar24) == bVar23) + 1;\n  }" (else "else") (compound_statement "{\n    iVar14 = 5;\n    pbVar19 = *(byte **)(param_1 + 0x1bec);\n    pbVar20 = (byte *)0x28e304;\n    do {\n      pbVar21 = pbVar20;\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      pbVar21 = pbVar20 + 1;\n      bVar23 = *pbVar19 < *pbVar20;\n      bVar24 = *pbVar19 == *pbVar20;\n      pbVar19 = pbVar19 + 1;\n      pbVar20 = pbVar21;\n    } while (bVar24);\n    *(uint *)(param_1 + 0x5934) = ((!bVar23 && !bVar24) == bVar23) + 1;\n  }" ({ "{") (expression_statement "iVar14 = 5;" (assignment_expression "iVar14 = 5" (identifier "iVar14") (= "=") (number_literal "5")) (; ";")) (expression_statement "pbVar19 = *(byte **)(param_1 + 0x1bec);" (assignment_expression "pbVar19 = *(byte **)(param_1 + 0x1bec)" (identifier "pbVar19") (= "=") (pointer_expression "*(byte **)(param_1 + 0x1bec)" (* "*") (cast_expression "(byte **)(param_1 + 0x1bec)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x1bec)" (( "(") (binary_expression "param_1 + 0x1bec" (identifier "param_1") (+ "+") (number_literal "0x1bec")) () ")"))))) (; ";")) (expression_statement "pbVar20 = (byte *)0x28e304;" (assignment_expression "pbVar20 = (byte *)0x28e304" (identifier "pbVar20") (= "=") (cast_expression "(byte *)0x28e304" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x28e304"))) (; ";")) (do_statement "do {\n      pbVar21 = pbVar20;\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      pbVar21 = pbVar20 + 1;\n      bVar23 = *pbVar19 < *pbVar20;\n      bVar24 = *pbVar19 == *pbVar20;\n      pbVar19 = pbVar19 + 1;\n      pbVar20 = pbVar21;\n    } while (bVar24);" (do "do") (compound_statement "{\n      pbVar21 = pbVar20;\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      pbVar21 = pbVar20 + 1;\n      bVar23 = *pbVar19 < *pbVar20;\n      bVar24 = *pbVar19 == *pbVar20;\n      pbVar19 = pbVar19 + 1;\n      pbVar20 = pbVar21;\n    }" ({ "{") (expression_statement "pbVar21 = pbVar20;" (assignment_expression "pbVar21 = pbVar20" (identifier "pbVar21") (= "=") (identifier "pbVar20")) (; ";")) (if_statement "if (iVar14 == 0) break;" (if "if") (parenthesized_expression "(iVar14 == 0)" (( "(") (binary_expression "iVar14 == 0" (identifier "iVar14") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" (identifier "iVar14") (= "=") (binary_expression "iVar14 + -1" (identifier "iVar14") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "pbVar21 = pbVar20 + 1;" (assignment_expression "pbVar21 = pbVar20 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar20 + 1" (identifier "pbVar20") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "bVar23 = *pbVar19 < *pbVar20;" (assignment_expression "bVar23 = *pbVar19 < *pbVar20" (identifier "bVar23") (= "=") (binary_expression "*pbVar19 < *pbVar20" (pointer_expression "*pbVar19" (* "*") (identifier "pbVar19")) (< "<") (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20")))) (; ";")) (expression_statement "bVar24 = *pbVar19 == *pbVar20;" (assignment_expression "bVar24 = *pbVar19 == *pbVar20" (identifier "bVar24") (= "=") (binary_expression "*pbVar19 == *pbVar20" (pointer_expression "*pbVar19" (* "*") (identifier "pbVar19")) (== "==") (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20")))) (; ";")) (expression_statement "pbVar19 = pbVar19 + 1;" (assignment_expression "pbVar19 = pbVar19 + 1" (identifier "pbVar19") (= "=") (binary_expression "pbVar19 + 1" (identifier "pbVar19") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar20 = pbVar21;" (assignment_expression "pbVar20 = pbVar21" (identifier "pbVar20") (= "=") (identifier "pbVar21")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar24)" (( "(") (identifier "bVar24") () ")")) (; ";")) (expression_statement "*(uint *)(param_1 + 0x5934) = ((!bVar23 && !bVar24) == bVar23) + 1;" (assignment_expression "*(uint *)(param_1 + 0x5934) = ((!bVar23 && !bVar24) == bVar23) + 1" (pointer_expression "*(uint *)(param_1 + 0x5934)" (* "*") (cast_expression "(uint *)(param_1 + 0x5934)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x5934)" (( "(") (binary_expression "param_1 + 0x5934" (identifier "param_1") (+ "+") (number_literal "0x5934")) () ")")))) (= "=") (binary_expression "((!bVar23 && !bVar24) == bVar23) + 1" (parenthesized_expression "((!bVar23 && !bVar24) == bVar23)" (( "(") (binary_expression "(!bVar23 && !bVar24) == bVar23" (parenthesized_expression "(!bVar23 && !bVar24)" (( "(") (binary_expression "!bVar23 && !bVar24" (unary_expression "!bVar23" (! "!") (identifier "bVar23")) (&& "&&") (unary_expression "!bVar24" (! "!") (identifier "bVar24"))) () ")")) (== "==") (identifier "bVar23")) () ")")) (+ "+") (number_literal "1"))) (; ";")) (} "}")))) (if_statement "if (*(char *)(param_1 + 0xd4c) == '\0') {\n    if (*(char *)(param_1 + 0xd90) == '\0') {\n      local_1c4 = &__DT_PLTGOT;\n      pcVar12 = getenv("COLLECT_NO_DEMANGLE");\n      *(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0;\n    }\n    else {\n      *(undefined1 *)(param_1 + 0x5939) = 0;\n    }\n  }\n  else {\n    pcVar12 = *(char **)(param_1 + 0xd50);\n    *(undefined1 *)(param_1 + 0x5939) = 1;\n    local_1c4 = &__DT_PLTGOT;\n    if (*pcVar12 != '\0') {\n      iVar14 = FUN_001ce8a0(pcVar12);\n      if (iVar14 == 0) {\n                    \n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }\n      FUN_001ce850(iVar14);\n    }\n  }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0xd4c) == '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0xd4c) == '\0'" (pointer_expression "*(char *)(param_1 + 0xd4c)" (* "*") (cast_expression "(char *)(param_1 + 0xd4c)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xd4c)" (( "(") (binary_expression "param_1 + 0xd4c" (identifier "param_1") (+ "+") (number_literal "0xd4c")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    if (*(char *)(param_1 + 0xd90) == '\0') {\n      local_1c4 = &__DT_PLTGOT;\n      pcVar12 = getenv("COLLECT_NO_DEMANGLE");\n      *(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0;\n    }\n    else {\n      *(undefined1 *)(param_1 + 0x5939) = 0;\n    }\n  }" ({ "{") (if_statement "if (*(char *)(param_1 + 0xd90) == '\0') {\n      local_1c4 = &__DT_PLTGOT;\n      pcVar12 = getenv("COLLECT_NO_DEMANGLE");\n      *(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0;\n    }\n    else {\n      *(undefined1 *)(param_1 + 0x5939) = 0;\n    }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0xd90) == '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0xd90) == '\0'" (pointer_expression "*(char *)(param_1 + 0xd90)" (* "*") (cast_expression "(char *)(param_1 + 0xd90)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xd90)" (( "(") (binary_expression "param_1 + 0xd90" (identifier "param_1") (+ "+") (number_literal "0xd90")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      local_1c4 = &__DT_PLTGOT;\n      pcVar12 = getenv("COLLECT_NO_DEMANGLE");\n      *(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0;\n    }" ({ "{") (expression_statement "local_1c4 = &__DT_PLTGOT;" (assignment_expression "local_1c4 = &__DT_PLTGOT" (identifier "local_1c4") (= "=") (pointer_expression "&__DT_PLTGOT" (& "&") (identifier "__DT_PLTGOT"))) (; ";")) (expression_statement "pcVar12 = getenv("COLLECT_NO_DEMANGLE");" (assignment_expression "pcVar12 = getenv("COLLECT_NO_DEMANGLE")" (identifier "pcVar12") (= "=") (call_expression "getenv("COLLECT_NO_DEMANGLE")" (identifier "getenv") (argument_list "("COLLECT_NO_DEMANGLE")" (( "(") (string_literal ""COLLECT_NO_DEMANGLE"" (" """) (string_content "COLLECT_NO_DEMANGLE") (" """)) () ")")))) (; ";")) (expression_statement "*(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0;" (assignment_expression "*(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0" (pointer_expression "*(bool *)(param_1 + 0x5939)" (* "*") (cast_expression "(bool *)(param_1 + 0x5939)" (( "(") (type_descriptor "bool *" (primitive_type "bool") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x5939)" (( "(") (binary_expression "param_1 + 0x5939" (identifier "param_1") (+ "+") (number_literal "0x5939")) () ")")))) (= "=") (binary_expression "pcVar12 == (char *)0x0" (identifier "pcVar12") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")))) (; ";")) (} "}")) (else_clause "else {\n      *(undefined1 *)(param_1 + 0x5939) = 0;\n    }" (else "else") (compound_statement "{\n      *(undefined1 *)(param_1 + 0x5939) = 0;\n    }" ({ "{") (expression_statement "*(undefined1 *)(param_1 + 0x5939) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x5939) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x5939)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x5939)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x5939)" (( "(") (binary_expression "param_1 + 0x5939" (identifier "param_1") (+ "+") (number_literal "0x5939")) () ")")))) (= "=") (number_literal "0")) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n    pcVar12 = *(char **)(param_1 + 0xd50);\n    *(undefined1 *)(param_1 + 0x5939) = 1;\n    local_1c4 = &__DT_PLTGOT;\n    if (*pcVar12 != '\0') {\n      iVar14 = FUN_001ce8a0(pcVar12);\n      if (iVar14 == 0) {\n                    \n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }\n      FUN_001ce850(iVar14);\n    }\n  }" (else "else") (compound_statement "{\n    pcVar12 = *(char **)(param_1 + 0xd50);\n    *(undefined1 *)(param_1 + 0x5939) = 1;\n    local_1c4 = &__DT_PLTGOT;\n    if (*pcVar12 != '\0') {\n      iVar14 = FUN_001ce8a0(pcVar12);\n      if (iVar14 == 0) {\n                    \n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }\n      FUN_001ce850(iVar14);\n    }\n  }" ({ "{") (expression_statement "pcVar12 = *(char **)(param_1 + 0xd50);" (assignment_expression "pcVar12 = *(char **)(param_1 + 0xd50)" (identifier "pcVar12") (= "=") (pointer_expression "*(char **)(param_1 + 0xd50)" (* "*") (cast_expression "(char **)(param_1 + 0xd50)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0xd50)" (( "(") (binary_expression "param_1 + 0xd50" (identifier "param_1") (+ "+") (number_literal "0xd50")) () ")"))))) (; ";")) (expression_statement "*(undefined1 *)(param_1 + 0x5939) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x5939) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x5939)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x5939)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x5939)" (( "(") (binary_expression "param_1 + 0x5939" (identifier "param_1") (+ "+") (number_literal "0x5939")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "local_1c4 = &__DT_PLTGOT;" (assignment_expression "local_1c4 = &__DT_PLTGOT" (identifier "local_1c4") (= "=") (pointer_expression "&__DT_PLTGOT" (& "&") (identifier "__DT_PLTGOT"))) (; ";")) (if_statement "if (*pcVar12 != '\0') {\n      iVar14 = FUN_001ce8a0(pcVar12);\n      if (iVar14 == 0) {\n                    \n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }\n      FUN_001ce850(iVar14);\n    }" (if "if") (parenthesized_expression "(*pcVar12 != '\0')" (( "(") (binary_expression "*pcVar12 != '\0'" (pointer_expression "*pcVar12" (* "*") (identifier "pcVar12")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      iVar14 = FUN_001ce8a0(pcVar12);\n      if (iVar14 == 0) {\n                    \n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }\n      FUN_001ce850(iVar14);\n    }" ({ "{") (expression_statement "iVar14 = FUN_001ce8a0(pcVar12);" (assignment_expression "iVar14 = FUN_001ce8a0(pcVar12)" (identifier "iVar14") (= "=") (call_expression "FUN_001ce8a0(pcVar12)" (identifier "FUN_001ce8a0") (argument_list "(pcVar12)" (( "(") (identifier "pcVar12") () ")")))) (; ";")) (if_statement "if (iVar14 == 0) {\n                    \n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }" (if "if") (parenthesized_expression "(iVar14 == 0)" (( "(") (binary_expression "iVar14 == 0" (identifier "iVar14") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);\n      }" ({ "{") (expression_statement "FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);" (call_expression "FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21)" (identifier "FUN_00065450") (argument_list "(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21)" (( "(") (binary_expression "local_1c4 + -0x400fe" (identifier "local_1c4") (+ "+") (number_literal "-0x400fe")) (, ",") (identifier "pcVar12") (, ",") (identifier "pbVar21") (, ",") (identifier "pbVar21") () ")"))) (; ";")) (} "}"))) (expression_statement "FUN_001ce850(iVar14);" (call_expression "FUN_001ce850(iVar14)" (identifier "FUN_001ce850") (argument_list "(iVar14)" (( "(") (identifier "iVar14") () ")"))) (; ";")) (} "}"))) (} "}")))) (expression_statement "ppuVar4 = local_1c4;" (assignment_expression "ppuVar4 = local_1c4" (identifier "ppuVar4") (= "=") (identifier "local_1c4")) (; ";")) (expression_statement "bVar24 = false;" (assignment_expression "bVar24 = false" (identifier "bVar24") (= "=") (false "false")) (; ";")) (expression_statement "bVar22 = *(char *)(param_1 + 0x2870) == '\0';" (assignment_expression "bVar22 = *(char *)(param_1 + 0x2870) == '\0'" (identifier "bVar22") (= "=") (binary_expression "*(char *)(param_1 + 0x2870) == '\0'" (pointer_expression "*(char *)(param_1 + 0x2870)" (* "*") (cast_expression "(char *)(param_1 + 0x2870)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x2870)" (( "(") (binary_expression "param_1 + 0x2870" (identifier "param_1") (+ "+") (number_literal "0x2870")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'")))) (; ";")) (if_statement "if (!bVar22) {\n    pbVar19 = *(byte **)(param_1 + 0x2874);\n    iVar14 = 6;\n    pbVar20 = pbVar19;\n    pbVar21 = (byte *)((int)local_1c4 + -0xeb29e);\n    do {\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar22 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n      pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n    } while (bVar22);\n    bVar23 = false;\n    bVar24 = (!bVar24 && !bVar22) == bVar24;\n    if (bVar24) {\n      *(undefined4 *)(param_1 + 0x5a88) = 0;\n    }\n    else {\n      iVar14 = 8;\n      pbVar20 = pbVar19;\n      pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar24 = (!bVar23 && !bVar24) == bVar23;\n      if (bVar24) {\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }\n      else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }\n    }\n  }" (if "if") (parenthesized_expression "(!bVar22)" (( "(") (unary_expression "!bVar22" (! "!") (identifier "bVar22")) () ")")) (compound_statement "{\n    pbVar19 = *(byte **)(param_1 + 0x2874);\n    iVar14 = 6;\n    pbVar20 = pbVar19;\n    pbVar21 = (byte *)((int)local_1c4 + -0xeb29e);\n    do {\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar22 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n      pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n    } while (bVar22);\n    bVar23 = false;\n    bVar24 = (!bVar24 && !bVar22) == bVar24;\n    if (bVar24) {\n      *(undefined4 *)(param_1 + 0x5a88) = 0;\n    }\n    else {\n      iVar14 = 8;\n      pbVar20 = pbVar19;\n      pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar24 = (!bVar23 && !bVar24) == bVar23;\n      if (bVar24) {\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }\n      else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }\n    }\n  }" ({ "{") (expression_statement "pbVar19 = *(byte **)(param_1 + 0x2874);" (assignment_expression "pbVar19 = *(byte **)(param_1 + 0x2874)" (identifier "pbVar19") (= "=") (pointer_expression "*(byte **)(param_1 + 0x2874)" (* "*") (cast_expression "(byte **)(param_1 + 0x2874)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x2874)" (( "(") (binary_expression "param_1 + 0x2874" (identifier "param_1") (+ "+") (number_literal "0x2874")) () ")"))))) (; ";")) (expression_statement "iVar14 = 6;" (assignment_expression "iVar14 = 6" (identifier "iVar14") (= "=") (number_literal "6")) (; ";")) (expression_statement "pbVar20 = pbVar19;" (assignment_expression "pbVar20 = pbVar19" (identifier "pbVar20") (= "=") (identifier "pbVar19")) (; ";")) (expression_statement "pbVar21 = (byte *)((int)local_1c4 + -0xeb29e);" (assignment_expression "pbVar21 = (byte *)((int)local_1c4 + -0xeb29e)" (identifier "pbVar21") (= "=") (cast_expression "(byte *)((int)local_1c4 + -0xeb29e)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1c4 + -0xeb29e)" (( "(") (binary_expression "(int)local_1c4 + -0xeb29e" (cast_expression "(int)local_1c4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1c4")) (+ "+") (number_literal "-0xeb29e")) () ")")))) (; ";")) (do_statement "do {\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar22 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n      pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n    } while (bVar22);" (do "do") (compound_statement "{\n      if (iVar14 == 0) break;\n      iVar14 = iVar14 + -1;\n      bVar24 = *pbVar20 < *pbVar21;\n      bVar22 = *pbVar20 == *pbVar21;\n      pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n      pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n    }" ({ "{") (if_statement "if (iVar14 == 0) break;" (if "if") (parenthesized_expression "(iVar14 == 0)" (( "(") (binary_expression "iVar14 == 0" (identifier "iVar14") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" (identifier "iVar14") (= "=") (binary_expression "iVar14 + -1" (identifier "iVar14") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar24 = *pbVar20 < *pbVar21;" (assignment_expression "bVar24 = *pbVar20 < *pbVar21" (identifier "bVar24") (= "=") (binary_expression "*pbVar20 < *pbVar21" (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar22 = *pbVar20 == *pbVar21;" (assignment_expression "bVar22 = *pbVar20 == *pbVar21" (identifier "bVar22") (= "=") (binary_expression "*pbVar20 == *pbVar21" (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1" (identifier "pbVar20") (= "=") (binary_expression "pbVar20 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar25 * -2" (identifier "pbVar20") (+ "+") (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar25")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar21 + (uint)bVar25 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar25")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar22)" (( "(") (identifier "bVar22") () ")")) (; ";")) (expression_statement "bVar23 = false;" (assignment_expression "bVar23 = false" (identifier "bVar23") (= "=") (false "false")) (; ";")) (expression_statement "bVar24 = (!bVar24 && !bVar22) == bVar24;" (assignment_expression "bVar24 = (!bVar24 && !bVar22) == bVar24" (identifier "bVar24") (= "=") (binary_expression "(!bVar24 && !bVar22) == bVar24" (parenthesized_expression "(!bVar24 && !bVar22)" (( "(") (binary_expression "!bVar24 && !bVar22" (unary_expression "!bVar24" (! "!") (identifier "bVar24")) (&& "&&") (unary_expression "!bVar22" (! "!") (identifier "bVar22"))) () ")")) (== "==") (identifier "bVar24"))) (; ";")) (if_statement "if (bVar24) {\n      *(undefined4 *)(param_1 + 0x5a88) = 0;\n    }\n    else {\n      iVar14 = 8;\n      pbVar20 = pbVar19;\n      pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar24 = (!bVar23 && !bVar24) == bVar23;\n      if (bVar24) {\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }\n      else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }\n    }" (if "if") (parenthesized_expression "(bVar24)" (( "(") (identifier "bVar24") () ")")) (compound_statement "{\n      *(undefined4 *)(param_1 + 0x5a88) = 0;\n    }" ({ "{") (expression_statement "*(undefined4 *)(param_1 + 0x5a88) = 0;" (assignment_expression "*(undefined4 *)(param_1 + 0x5a88) = 0" (pointer_expression "*(undefined4 *)(param_1 + 0x5a88)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x5a88)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x5a88)" (( "(") (binary_expression "param_1 + 0x5a88" (identifier "param_1") (+ "+") (number_literal "0x5a88")) () ")")))) (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n      iVar14 = 8;\n      pbVar20 = pbVar19;\n      pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar24 = (!bVar23 && !bVar24) == bVar23;\n      if (bVar24) {\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }\n      else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }\n    }" (else "else") (compound_statement "{\n      iVar14 = 8;\n      pbVar20 = pbVar19;\n      pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar24 = (!bVar23 && !bVar24) == bVar23;\n      if (bVar24) {\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }\n      else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }\n    }" ({ "{") (expression_statement "iVar14 = 8;" (assignment_expression "iVar14 = 8" (identifier "iVar14") (= "=") (number_literal "8")) (; ";")) (expression_statement "pbVar20 = pbVar19;" (assignment_expression "pbVar20 = pbVar19" (identifier "pbVar20") (= "=") (identifier "pbVar19")) (; ";")) (expression_statement "pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);" (assignment_expression "pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3)" (identifier "pbVar21") (= "=") (cast_expression "(byte *)((int)local_1c4 + -0x10e8f3)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1c4 + -0x10e8f3)" (( "(") (binary_expression "(int)local_1c4 + -0x10e8f3" (cast_expression "(int)local_1c4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1c4")) (+ "+") (number_literal "-0x10e8f3")) () ")")))) (; ";")) (do_statement "do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      } while (bVar24);" (do "do") (compound_statement "{\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar23 = *pbVar20 < *pbVar21;\n        bVar24 = *pbVar20 == *pbVar21;\n        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n      }" ({ "{") (if_statement "if (iVar14 == 0) break;" (if "if") (parenthesized_expression "(iVar14 == 0)" (( "(") (binary_expression "iVar14 == 0" (identifier "iVar14") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" (identifier "iVar14") (= "=") (binary_expression "iVar14 + -1" (identifier "iVar14") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar23 = *pbVar20 < *pbVar21;" (assignment_expression "bVar23 = *pbVar20 < *pbVar21" (identifier "bVar23") (= "=") (binary_expression "*pbVar20 < *pbVar21" (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar24 = *pbVar20 == *pbVar21;" (assignment_expression "bVar24 = *pbVar20 == *pbVar21" (identifier "bVar24") (= "=") (binary_expression "*pbVar20 == *pbVar21" (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1" (identifier "pbVar20") (= "=") (binary_expression "pbVar20 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar25 * -2" (identifier "pbVar20") (+ "+") (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar25")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar21 + (uint)bVar25 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar25")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar24)" (( "(") (identifier "bVar24") () ")")) (; ";")) (expression_statement "bVar22 = false;" (assignment_expression "bVar22 = false" (identifier "bVar22") (= "=") (false "false")) (; ";")) (expression_statement "bVar24 = (!bVar23 && !bVar24) == bVar23;" (assignment_expression "bVar24 = (!bVar23 && !bVar24) == bVar23" (identifier "bVar24") (= "=") (binary_expression "(!bVar23 && !bVar24) == bVar23" (parenthesized_expression "(!bVar23 && !bVar24)" (( "(") (binary_expression "!bVar23 && !bVar24" (unary_expression "!bVar23" (! "!") (identifier "bVar23")) (&& "&&") (unary_expression "!bVar24" (! "!") (identifier "bVar24"))) () ")")) (== "==") (identifier "bVar23"))) (; ";")) (if_statement "if (bVar24) {\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }\n      else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }" (if "if") (parenthesized_expression "(bVar24)" (( "(") (identifier "bVar24") () ")")) (compound_statement "{\n        *(undefined4 *)(param_1 + 0x5a88) = 1;\n      }" ({ "{") (expression_statement "*(undefined4 *)(param_1 + 0x5a88) = 1;" (assignment_expression "*(undefined4 *)(param_1 + 0x5a88) = 1" (pointer_expression "*(undefined4 *)(param_1 + 0x5a88)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x5a88)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x5a88)" (( "(") (binary_expression "param_1 + 0x5a88" (identifier "param_1") (+ "+") (number_literal "0x5a88")) () ")")))) (= "=") (number_literal "1")) (; ";")) (} "}")) (else_clause "else {\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }" (else "else") (compound_statement "{\n        iVar14 = 5;\n        pbVar20 = pbVar19;\n        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);\n        bVar23 = false;\n        bVar24 = (!bVar22 && !bVar24) == bVar22;\n        if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }\n      }" ({ "{") (expression_statement "iVar14 = 5;" (assignment_expression "iVar14 = 5" (identifier "iVar14") (= "=") (number_literal "5")) (; ";")) (expression_statement "pbVar20 = pbVar19;" (assignment_expression "pbVar20 = pbVar19" (identifier "pbVar20") (= "=") (identifier "pbVar19")) (; ";")) (expression_statement "pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);" (assignment_expression "pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb)" (identifier "pbVar21") (= "=") (cast_expression "(byte *)((int)local_1c4 + -0x10e8eb)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1c4 + -0x10e8eb)" (( "(") (binary_expression "(int)local_1c4 + -0x10e8eb" (cast_expression "(int)local_1c4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1c4")) (+ "+") (number_literal "-0x10e8eb")) () ")")))) (; ";")) (do_statement "do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        } while (bVar24);" (do "do") (compound_statement "{\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar21;\n          bVar24 = *pbVar20 == *pbVar21;\n          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;\n        }" ({ "{") (if_statement "if (iVar14 == 0) break;" (if "if") (parenthesized_expression "(iVar14 == 0)" (( "(") (binary_expression "iVar14 == 0" (identifier "iVar14") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" (identifier "iVar14") (= "=") (binary_expression "iVar14 + -1" (identifier "iVar14") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar22 = *pbVar20 < *pbVar21;" (assignment_expression "bVar22 = *pbVar20 < *pbVar21" (identifier "bVar22") (= "=") (binary_expression "*pbVar20 < *pbVar21" (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar24 = *pbVar20 == *pbVar21;" (assignment_expression "bVar24 = *pbVar20 == *pbVar21" (identifier "bVar24") (= "=") (binary_expression "*pbVar20 == *pbVar21" (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1" (identifier "pbVar20") (= "=") (binary_expression "pbVar20 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar25 * -2" (identifier "pbVar20") (+ "+") (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar25")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar21 + (uint)bVar25 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar25")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar24)" (( "(") (identifier "bVar24") () ")")) (; ";")) (expression_statement "bVar23 = false;" (assignment_expression "bVar23 = false" (identifier "bVar23") (= "=") (false "false")) (; ";")) (expression_statement "bVar24 = (!bVar22 && !bVar24) == bVar22;" (assignment_expression "bVar24 = (!bVar22 && !bVar24) == bVar22" (identifier "bVar24") (= "=") (binary_expression "(!bVar22 && !bVar24) == bVar22" (parenthesized_expression "(!bVar22 && !bVar24)" (( "(") (binary_expression "!bVar22 && !bVar24" (unary_expression "!bVar22" (! "!") (identifier "bVar22")) (&& "&&") (unary_expression "!bVar24" (! "!") (identifier "bVar24"))) () ")")) (== "==") (identifier "bVar22"))) (; ";")) (if_statement "if (bVar24) {\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }\n        else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }" (if "if") (parenthesized_expression "(bVar24)" (( "(") (identifier "bVar24") () ")")) (compound_statement "{\n          *(undefined4 *)(param_1 + 0x5a88) = 2;\n        }" ({ "{") (expression_statement "*(undefined4 *)(param_1 + 0x5a88) = 2;" (assignment_expression "*(undefined4 *)(param_1 + 0x5a88) = 2" (pointer_expression "*(undefined4 *)(param_1 + 0x5a88)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x5a88)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x5a88)" (( "(") (binary_expression "param_1 + 0x5a88" (identifier "param_1") (+ "+") (number_literal "0x5a88")) () ")")))) (= "=") (number_literal "2")) (; ";")) (} "}")) (else_clause "else {\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }" (else "else") (compound_statement "{\n          iVar14 = 6;\n          pbVar20 = (byte *)((int)local_1c4 + -0xea022);\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }\n        }" ({ "{") (expression_statement "iVar14 = 6;" (assignment_expression "iVar14 = 6" (identifier "iVar14") (= "=") (number_literal "6")) (; ";")) (expression_statement "pbVar20 = (byte *)((int)local_1c4 + -0xea022);" (assignment_expression "pbVar20 = (byte *)((int)local_1c4 + -0xea022)" (identifier "pbVar20") (= "=") (cast_expression "(byte *)((int)local_1c4 + -0xea022)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1c4 + -0xea022)" (( "(") (binary_expression "(int)local_1c4 + -0xea022" (cast_expression "(int)local_1c4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1c4")) (+ "+") (number_literal "-0xea022")) () ")")))) (; ";")) (do_statement "do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          } while (bVar24);" (do "do") (compound_statement "{\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar23 = *pbVar19 < *pbVar20;\n            bVar24 = *pbVar19 == *pbVar20;\n            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n          }" ({ "{") (if_statement "if (iVar14 == 0) break;" (if "if") (parenthesized_expression "(iVar14 == 0)" (( "(") (binary_expression "iVar14 == 0" (identifier "iVar14") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" (identifier "iVar14") (= "=") (binary_expression "iVar14 + -1" (identifier "iVar14") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar23 = *pbVar19 < *pbVar20;" (assignment_expression "bVar23 = *pbVar19 < *pbVar20" (identifier "bVar23") (= "=") (binary_expression "*pbVar19 < *pbVar20" (pointer_expression "*pbVar19" (* "*") (identifier "pbVar19")) (< "<") (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20")))) (; ";")) (expression_statement "bVar24 = *pbVar19 == *pbVar20;" (assignment_expression "bVar24 = *pbVar19 == *pbVar20" (identifier "bVar24") (= "=") (binary_expression "*pbVar19 == *pbVar20" (pointer_expression "*pbVar19" (* "*") (identifier "pbVar19")) (== "==") (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20")))) (; ";")) (expression_statement "pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1" (identifier "pbVar19") (= "=") (binary_expression "pbVar19 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar19 + (uint)bVar25 * -2" (identifier "pbVar19") (+ "+") (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar25")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1" (identifier "pbVar20") (= "=") (binary_expression "pbVar20 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar25 * -2" (identifier "pbVar20") (+ "+") (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar25")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar24)" (( "(") (identifier "bVar24") () ")")) (; ";")) (if_statement "if ((!bVar23 && !bVar24) == bVar23) {\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }" (if "if") (parenthesized_expression "((!bVar23 && !bVar24) == bVar23)" (( "(") (binary_expression "(!bVar23 && !bVar24) == bVar23" (parenthesized_expression "(!bVar23 && !bVar24)" (( "(") (binary_expression "!bVar23 && !bVar24" (unary_expression "!bVar23" (! "!") (identifier "bVar23")) (&& "&&") (unary_expression "!bVar24" (! "!") (identifier "bVar24"))) () ")")) (== "==") (identifier "bVar23")) () ")")) (compound_statement "{\n            *(undefined4 *)(param_1 + 0x5a88) = 3;\n          }" ({ "{") (expression_statement "*(undefined4 *)(param_1 + 0x5a88) = 3;" (assignment_expression "*(undefined4 *)(param_1 + 0x5a88) = 3" (pointer_expression "*(undefined4 *)(param_1 + 0x5a88)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x5a88)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x5a88)" (( "(") (binary_expression "param_1 + 0x5a88" (identifier "param_1") (+ "+") (number_literal "0x5a88")) () ")")))) (= "=") (number_literal "3")) (; ";")) (} "}"))) (} "}")))) (} "}")))) (} "}")))) (} "}"))) (if_statement "if ((*(char *)(param_1 + 0x2401) != '\0') && (*(char *)(param_1 + 0x247c) == '\0')) {\n    *(undefined1 *)(param_1 + 0x247c) = 1;\n    *(undefined ***)(param_1 + 0x2480) = local_1c4 + -0x4062a;\n  }" (if "if") (parenthesized_expression "((*(char *)(param_1 + 0x2401) != '\0') && (*(char *)(param_1 + 0x247c) == '\0'))" (( "(") (binary_expression "(*(char *)(param_1 + 0x2401) != '\0') && (*(char *)(param_1 + 0x247c) == '\0')" (parenthesized_expression "(*(char *)(param_1 + 0x2401) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x2401) != '\0'" (pointer_expression "*(char *)(param_1 + 0x2401)" (* "*") (cast_expression "(char *)(param_1 + 0x2401)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x2401)" (( "(") (binary_expression "param_1 + 0x2401" (identifier "param_1") (+ "+") (number_literal "0x2401")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(*(char *)(param_1 + 0x247c) == '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x247c) == '\0'" (pointer_expression "*(char *)(param_1 + 0x247c)" (* "*") (cast_expression "(char *)(param_1 + 0x247c)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x247c)" (( "(") (binary_expression "param_1 + 0x247c" (identifier "param_1") (+ "+") (number_literal "0x247c")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n    *(undefined1 *)(param_1 + 0x247c) = 1;\n    *(undefined ***)(param_1 + 0x2480) = local_1c4 + -0x4062a;\n  }" ({ "{") (expression_statement "*(undefined1 *)(param_1 + 0x247c) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x247c) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x247c)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x247c)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x247c)" (( "(") (binary_expression "param_1 + 0x247c" (identifier "param_1") (+ "+") (number_literal "0x247c")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(undefined ***)(param_1 + 0x2480) = local_1c4 + -0x4062a;" (assignment_expression "*(undefined ***)(param_1 + 0x2480) = local_1c4 + -0x4062a" (pointer_expression "*(undefined ***)(param_1 + 0x2480)" (* "*") (cast_expression "(undefined ***)(param_1 + 0x2480)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(param_1 + 0x2480)" (( "(") (binary_expression "param_1 + 0x2480" (identifier "param_1") (+ "+") (number_literal "0x2480")) () ")")))) (= "=") (binary_expression "local_1c4 + -0x4062a" (identifier "local_1c4") (+ "+") (number_literal "-0x4062a"))) (; ";")) (} "}"))) (if_statement "if ((*(char *)(param_1 + 0x24c1) != '\0') || (*(char *)(param_1 + 0x253d) != '\0')) {\n    *(undefined1 *)(param_1 + 0x5938) = 1;\n  }" (if "if") (parenthesized_expression "((*(char *)(param_1 + 0x24c1) != '\0') || (*(char *)(param_1 + 0x253d) != '\0'))" (( "(") (binary_expression "(*(char *)(param_1 + 0x24c1) != '\0') || (*(char *)(param_1 + 0x253d) != '\0')" (parenthesized_expression "(*(char *)(param_1 + 0x24c1) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x24c1) != '\0'" (pointer_expression "*(char *)(param_1 + 0x24c1)" (* "*") (cast_expression "(char *)(param_1 + 0x24c1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x24c1)" (( "(") (binary_expression "param_1 + 0x24c1" (identifier "param_1") (+ "+") (number_literal "0x24c1")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (|| "||") (parenthesized_expression "(*(char *)(param_1 + 0x253d) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x253d) != '\0'" (pointer_expression "*(char *)(param_1 + 0x253d)" (* "*") (cast_expression "(char *)(param_1 + 0x253d)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x253d)" (( "(") (binary_expression "param_1 + 0x253d" (identifier "param_1") (+ "+") (number_literal "0x253d")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n    *(undefined1 *)(param_1 + 0x5938) = 1;\n  }" ({ "{") (expression_statement "*(undefined1 *)(param_1 + 0x5938) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x5938) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x5938)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x5938)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x5938)" (( "(") (binary_expression "param_1 + 0x5938" (identifier "param_1") (+ "+") (number_literal "0x5938")) () ")")))) (= "=") (number_literal "1")) (; ";")) (} "}"))) (expression_statement "iVar14 = *(int *)(param_1 + 0x3de8);" (assignment_expression "iVar14 = *(int *)(param_1 + 0x3de8)" (identifier "iVar14") (= "=") (pointer_expression "*(int *)(param_1 + 0x3de8)" (* "*") (cast_expression "(int *)(param_1 + 0x3de8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x3de8)" (( "(") (binary_expression "param_1 + 0x3de8" (identifier "param_1") (+ "+") (number_literal "0x3de8")) () ")"))))) (; ";")) (if_statement "if (0 < iVar14) {\n    if (*(int *)(param_1 + 0x3e2c) == 0) {\n      *(int *)(param_1 + 0x3e2c) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3e70) == 0) {\n      *(int *)(param_1 + 0x3e70) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3eb4) == 0) {\n      *(int *)(param_1 + 0x3eb4) = iVar14;\n    }\n  }" (if "if") (parenthesized_expression "(0 < iVar14)" (( "(") (binary_expression "0 < iVar14" (number_literal "0") (< "<") (identifier "iVar14")) () ")")) (compound_statement "{\n    if (*(int *)(param_1 + 0x3e2c) == 0) {\n      *(int *)(param_1 + 0x3e2c) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3e70) == 0) {\n      *(int *)(param_1 + 0x3e70) = iVar14;\n    }\n    if (*(int *)(param_1 + 0x3eb4) == 0) {\n      *(int *)(param_1 + 0x3eb4) = iVar14;\n    }\n  }" ({ "{") (if_statement "if (*(int *)(param_1 + 0x3e2c) == 0) {\n      *(int *)(param_1 + 0x3e2c) = iVar14;\n    }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0x3e2c) == 0)" (( "(") (binary_expression "*(int *)(param_1 + 0x3e2c) == 0" (pointer_expression "*(int *)(param_1 + 0x3e2c)" (* "*") (cast_expression "(int *)(param_1 + 0x3e2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x3e2c)" (( "(") (binary_expression "param_1 + 0x3e2c" (identifier "param_1") (+ "+") (number_literal "0x3e2c")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      *(int *)(param_1 + 0x3e2c) = iVar14;\n    }" ({ "{") (expression_statement "*(int *)(param_1 + 0x3e2c) = iVar14;" (assignment_expression "*(int *)(param_1 + 0x3e2c) = iVar14" (pointer_expression "*(int *)(param_1 + 0x3e2c)" (* "*") (cast_expression "(int *)(param_1 + 0x3e2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x3e2c)" (( "(") (binary_expression "param_1 + 0x3e2c" (identifier "param_1") (+ "+") (number_literal "0x3e2c")) () ")")))) (= "=") (identifier "iVar14")) (; ";")) (} "}"))) (if_statement "if (*(int *)(param_1 + 0x3e70) == 0) {\n      *(int *)(param_1 + 0x3e70) = iVar14;\n    }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0x3e70) == 0)" (( "(") (binary_expression "*(int *)(param_1 + 0x3e70) == 0" (pointer_expression "*(int *)(param_1 + 0x3e70)" (* "*") (cast_expression "(int *)(param_1 + 0x3e70)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x3e70)" (( "(") (binary_expression "param_1 + 0x3e70" (identifier "param_1") (+ "+") (number_literal "0x3e70")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      *(int *)(param_1 + 0x3e70) = iVar14;\n    }" ({ "{") (expression_statement "*(int *)(param_1 + 0x3e70) = iVar14;" (assignment_expression "*(int *)(param_1 + 0x3e70) = iVar14" (pointer_expression "*(int *)(param_1 + 0x3e70)" (* "*") (cast_expression "(int *)(param_1 + 0x3e70)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x3e70)" (( "(") (binary_expression "param_1 + 0x3e70" (identifier "param_1") (+ "+") (number_literal "0x3e70")) () ")")))) (= "=") (identifier "iVar14")) (; ";")) (} "}"))) (if_statement "if (*(int *)(param_1 + 0x3eb4) == 0) {\n      *(int *)(param_1 + 0x3eb4) = iVar14;\n    }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0x3eb4) == 0)" (( "(") (binary_expression "*(int *)(param_1 + 0x3eb4) == 0" (pointer_expression "*(int *)(param_1 + 0x3eb4)" (* "*") (cast_expression "(int *)(param_1 + 0x3eb4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x3eb4)" (( "(") (binary_expression "param_1 + 0x3eb4" (identifier "param_1") (+ "+") (number_literal "0x3eb4")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      *(int *)(param_1 + 0x3eb4) = iVar14;\n    }" ({ "{") (expression_statement "*(int *)(param_1 + 0x3eb4) = iVar14;" (assignment_expression "*(int *)(param_1 + 0x3eb4) = iVar14" (pointer_expression "*(int *)(param_1 + 0x3eb4)" (* "*") (cast_expression "(int *)(param_1 + 0x3eb4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x3eb4)" (( "(") (binary_expression "param_1 + 0x3eb4" (identifier "param_1") (+ "+") (number_literal "0x3eb4")) () ")")))) (= "=") (identifier "iVar14")) (; ";")) (} "}"))) (} "}"))) (expression_statement "local_1d4 = &local_1bc;" (assignment_expression "local_1d4 = &local_1bc" (identifier "local_1d4") (= "=") (pointer_expression "&local_1bc" (& "&") (identifier "local_1bc"))) (; ";")) (expression_statement "local_1b4[0] = 0;" (assignment_expression "local_1b4[0] = 0" (subscript_expression "local_1b4[0]" (identifier "local_1b4") ([ "[") (number_literal "0") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "local_1ec = local_1b4;" (assignment_expression "local_1ec = local_1b4" (identifier "local_1ec") (= "=") (identifier "local_1b4")) (; ";")) (expression_statement "local_1b8 = 0;" (assignment_expression "local_1b8 = 0" (identifier "local_1b8") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_1bc = local_1ec;" (assignment_expression "local_1bc = local_1ec" (identifier "local_1bc") (= "=") (identifier "local_1ec")) (; ";")) (if_statement "if (*(char *)(param_1 + 0x4ca8) == '\0') {\n    if (*(char *)(param_1 + 0x2729) == '\0') {\n      local_1dc = local_12c;\n      local_1d0 = (undefined ***)&local_134;\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0);\n      local_1a4 = local_19c;\n                    \n      FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_18c = 1;\n      if (local_1a0 == 0) {\n                    \n        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      local_1d8 = param_1 + 0x2184;\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_1a4);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_1a4 != local_19c) {\n        FUN_001e6db0(local_1a4);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0);\n      local_188 = local_180;\n                    \n      FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_170 = 1;\n      if (local_184 == 0) {\n                    \n        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_188);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_188 != local_180) {\n        FUN_001e6db0(local_188);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0);\n      local_16c = local_164;\n                    \n      FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_154 = 1;\n      if (local_168 == 0) {\n                    \n        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_16c);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_16c != local_164) {\n        FUN_001e6db0(local_16c);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0);\n      local_1e0 = local_148;\n      local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n      local_150 = local_1e0;\n                    \n      FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_138 = 1;\n      if (local_14c == 0) {\n                    \n        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_150 != local_1e0) {\n        FUN_001e6db0(local_150);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      goto LAB_000e7f08;\n    }\n  }\n  else {\n    pcVar12 = *(char **)(param_1 + 0x4cac);\n    sVar9 = strlen(pcVar12);\n    ppuVar3 = local_1d4;\n                    \n    FUN_001ef9f0(local_1d4,0,0,pcVar12,sVar9);\n    iVar14 = FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6);\n    if (iVar14 == 0) {\n      uVar6 = local_1b8;\n      if (2 < local_1b8) {\n        uVar6 = 2;\n      }\n                    \n      FUN_001eebf0(local_1d4,0,uVar6);\n    }\nLAB_000e7f08:\n    uVar6 = 0;\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n    if (local_1b8 != 0) {\n      do {\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    \n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      } while( true );\n    }\n  }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x4ca8) == '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x4ca8) == '\0'" (pointer_expression "*(char *)(param_1 + 0x4ca8)" (* "*") (cast_expression "(char *)(param_1 + 0x4ca8)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x4ca8)" (( "(") (binary_expression "param_1 + 0x4ca8" (identifier "param_1") (+ "+") (number_literal "0x4ca8")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    if (*(char *)(param_1 + 0x2729) == '\0') {\n      local_1dc = local_12c;\n      local_1d0 = (undefined ***)&local_134;\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0);\n      local_1a4 = local_19c;\n                    \n      FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_18c = 1;\n      if (local_1a0 == 0) {\n                    \n        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      local_1d8 = param_1 + 0x2184;\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_1a4);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_1a4 != local_19c) {\n        FUN_001e6db0(local_1a4);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0);\n      local_188 = local_180;\n                    \n      FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_170 = 1;\n      if (local_184 == 0) {\n                    \n        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_188);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_188 != local_180) {\n        FUN_001e6db0(local_188);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0);\n      local_16c = local_164;\n                    \n      FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_154 = 1;\n      if (local_168 == 0) {\n                    \n        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_16c);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_16c != local_164) {\n        FUN_001e6db0(local_16c);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0);\n      local_1e0 = local_148;\n      local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n      local_150 = local_1e0;\n                    \n      FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_138 = 1;\n      if (local_14c == 0) {\n                    \n        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_150 != local_1e0) {\n        FUN_001e6db0(local_150);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      goto LAB_000e7f08;\n    }\n  }" ({ "{") (if_statement "if (*(char *)(param_1 + 0x2729) == '\0') {\n      local_1dc = local_12c;\n      local_1d0 = (undefined ***)&local_134;\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0);\n      local_1a4 = local_19c;\n                    \n      FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_18c = 1;\n      if (local_1a0 == 0) {\n                    \n        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      local_1d8 = param_1 + 0x2184;\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_1a4);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_1a4 != local_19c) {\n        FUN_001e6db0(local_1a4);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0);\n      local_188 = local_180;\n                    \n      FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_170 = 1;\n      if (local_184 == 0) {\n                    \n        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_188);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_188 != local_180) {\n        FUN_001e6db0(local_188);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0);\n      local_16c = local_164;\n                    \n      FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_154 = 1;\n      if (local_168 == 0) {\n                    \n        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_16c);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_16c != local_164) {\n        FUN_001e6db0(local_16c);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0);\n      local_1e0 = local_148;\n      local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n      local_150 = local_1e0;\n                    \n      FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_138 = 1;\n      if (local_14c == 0) {\n                    \n        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_150 != local_1e0) {\n        FUN_001e6db0(local_150);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      goto LAB_000e7f08;\n    }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x2729) == '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x2729) == '\0'" (pointer_expression "*(char *)(param_1 + 0x2729)" (* "*") (cast_expression "(char *)(param_1 + 0x2729)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x2729)" (( "(") (binary_expression "param_1 + 0x2729" (identifier "param_1") (+ "+") (number_literal "0x2729")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      local_1dc = local_12c;\n      local_1d0 = (undefined ***)&local_134;\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0);\n      local_1a4 = local_19c;\n                    \n      FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_18c = 1;\n      if (local_1a0 == 0) {\n                    \n        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      local_1d8 = param_1 + 0x2184;\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_1a4);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_1a4 != local_19c) {\n        FUN_001e6db0(local_1a4);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0);\n      local_188 = local_180;\n                    \n      FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_170 = 1;\n      if (local_184 == 0) {\n                    \n        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_188);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_188 != local_180) {\n        FUN_001e6db0(local_188);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0);\n      local_16c = local_164;\n                    \n      FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_154 = 1;\n      if (local_168 == 0) {\n                    \n        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_16c);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_16c != local_164) {\n        FUN_001e6db0(local_16c);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      local_134 = local_1dc;\n                    \n      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0);\n      local_1e0 = local_148;\n      local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n      local_150 = local_1e0;\n                    \n      FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0);\n      local_138 = 1;\n      if (local_14c == 0) {\n                    \n        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);\n      }\n      piVar7 = *(int **)(param_1 + 0x2188);\n      if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }\n      if (local_150 != local_1e0) {\n        FUN_001e6db0(local_150);\n      }\n      if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }\n      goto LAB_000e7f08;\n    }" ({ "{") (expression_statement "local_1dc = local_12c;" (assignment_expression "local_1dc = local_12c" (identifier "local_1dc") (= "=") (identifier "local_12c")) (; ";")) (expression_statement "local_1d0 = (undefined ***)&local_134;" (assignment_expression "local_1d0 = (undefined ***)&local_134" (identifier "local_1d0") (= "=") (cast_expression "(undefined ***)&local_134" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (pointer_expression "&local_134" (& "&") (identifier "local_134")))) (; ";")) (expression_statement "local_134 = local_1dc;" (assignment_expression "local_134 = local_1dc" (identifier "local_134") (= "=") (identifier "local_1dc")) (; ";")) (expression_statement "FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0);" (call_expression "FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0)" (identifier "FUN_00050e40") (argument_list "(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0)" (( "(") (identifier "local_1d0") (, ",") (binary_expression "(int)local_1c4 + -0x1003bf" (cast_expression "(int)local_1c4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1c4")) (+ "+") (number_literal "-0x1003bf")) (, ",") (binary_expression "(int)local_1c4 + -0x1003b2" (cast_expression "(int)local_1c4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1c4")) (+ "+") (number_literal "-0x1003b2")) (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "local_1a4 = local_19c;" (assignment_expression "local_1a4 = local_19c" (identifier "local_1a4") (= "=") (identifier "local_19c")) (; ";")) (expression_statement "FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0);" (call_expression "FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0)" (identifier "FUN_000513a0") (argument_list "(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0)" (( "(") (pointer_expression "&local_1a4" (& "&") (identifier "local_1a4")) (, ",") (identifier "local_134") (, ",") (cast_expression "(undefined *)(local_130 + (int)local_134)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_130 + (int)local_134)" (( "(") (binary_expression "local_130 + (int)local_134" (identifier "local_130") (+ "+") (cast_expression "(int)local_134" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_134"))) () ")"))) (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "local_18c = 1;" (assignment_expression "local_18c = 1" (identifier "local_18c") (= "=") (number_literal "1")) (; ";")) (if_statement "if (local_1a0 == 0) {\n                    \n        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);\n      }" (if "if") (parenthesized_expression "(local_1a0 == 0)" (( "(") (binary_expression "local_1a0 == 0" (identifier "local_1a0") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);\n      }" ({ "{") (expression_statement "FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);" (call_expression "FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1)" (identifier "FUN_001ef9f0") (argument_list "(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1)" (( "(") (pointer_expression "&local_1a4" (& "&") (identifier "local_1a4")) (, ",") (number_literal "0") (, ",") (number_literal "0") (, ",") (binary_expression "(int)local_1c4 + -0x1013b5" (cast_expression "(int)local_1c4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1c4")) (+ "+") (number_literal "-0x1013b5")) (, ",") (number_literal "1") () ")"))) (; ";")) (} "}"))) (expression_statement "local_1d8 = param_1 + 0x2184;" (assignment_expression "local_1d8 = param_1 + 0x2184" (identifier "local_1d8") (= "=") (binary_expression "param_1 + 0x2184" (identifier "param_1") (+ "+") (number_literal "0x2184"))) (; ";")) (expression_statement "piVar7 = *(int **)(param_1 + 0x2188);" (assignment_expression "piVar7 = *(int **)(param_1 + 0x2188)" (identifier "piVar7") (= "=") (pointer_expression "*(int **)(param_1 + 0x2188)" (* "*") (cast_expression "(int **)(param_1 + 0x2188)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x2188)" (( "(") (binary_expression "param_1 + 0x2188" (identifier "param_1") (+ "+") (number_literal "0x2188")) () ")"))))) (; ";")) (if_statement "if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_1a4);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" (if "if") (parenthesized_expression "(piVar7 == *(int **)(param_1 + 0x218c))" (( "(") (binary_expression "piVar7 == *(int **)(param_1 + 0x218c)" (identifier "piVar7") (== "==") (pointer_expression "*(int **)(param_1 + 0x218c)" (* "*") (cast_expression "(int **)(param_1 + 0x218c)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x218c)" (( "(") (binary_expression "param_1 + 0x218c" (identifier "param_1") (+ "+") (number_literal "0x218c")) () ")"))))) () ")")) (compound_statement "{\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_1a4);\n      }" ({ "{") (expression_statement "FUN_000eae90(local_1d8,piVar7,&local_1a4);" (call_expression "FUN_000eae90(local_1d8,piVar7,&local_1a4)" (identifier "FUN_000eae90") (argument_list "(local_1d8,piVar7,&local_1a4)" (( "(") (identifier "local_1d8") (, ",") (identifier "piVar7") (, ",") (pointer_expression "&local_1a4" (& "&") (identifier "local_1a4")) () ")"))) (; ";")) (} "}")) (else_clause "else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" (else "else") (compound_statement "{\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" ({ "{") (expression_statement "*piVar7 = (int)(piVar7 + 2);" (assignment_expression "*piVar7 = (int)(piVar7 + 2)" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (= "=") (cast_expression "(int)(piVar7 + 2)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(piVar7 + 2)" (( "(") (binary_expression "piVar7 + 2" (identifier "piVar7") (+ "+") (number_literal "2")) () ")")))) (; ";")) (expression_statement "FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);" (call_expression "FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0)" (identifier "FUN_000513a0") (argument_list "(piVar7,local_1a4,local_1a4 + local_1a0,0)" (( "(") (identifier "piVar7") (, ",") (identifier "local_1a4") (, ",") (binary_expression "local_1a4 + local_1a0" (identifier "local_1a4") (+ "+") (identifier "local_1a0")) (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "*(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;" (assignment_expression "*(undefined1 *)(piVar7 + 6) = (undefined1)local_18c" (pointer_expression "*(undefined1 *)(piVar7 + 6)" (* "*") (cast_expression "(undefined1 *)(piVar7 + 6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar7 + 6)" (( "(") (binary_expression "piVar7 + 6" (identifier "piVar7") (+ "+") (number_literal "6")) () ")")))) (= "=") (cast_expression "(undefined1)local_18c" (( "(") (type_descriptor "undefined1" (type_identifier "undefined1")) () ")") (identifier "local_18c"))) (; ";")) (expression_statement "*(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;" (assignment_expression "*(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_" (pointer_expression "*(undefined1 *)((int)piVar7 + 0x19)" (* "*") (cast_expression "(undefined1 *)((int)piVar7 + 0x19)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar7 + 0x19)" (( "(") (binary_expression "(int)piVar7 + 0x19" (cast_expression "(int)piVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar7")) (+ "+") (number_literal "0x19")) () ")")))) (= "=") (field_expression "local_18c._1_1_" (identifier "local_18c") (. ".") (field_identifier "_1_1_"))) (; ";")) (expression_statement "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;" (assignment_expression "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" (* "*") (cast_expression "(int *)(param_1 + 0x2188)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x2188)" (( "(") (binary_expression "param_1 + 0x2188" (identifier "param_1") (+ "+") (number_literal "0x2188")) () ")")))) (= "=") (binary_expression "*(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" (* "*") (cast_expression "(int *)(param_1 + 0x2188)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x2188)" (( "(") (binary_expression "param_1 + 0x2188" (identifier "param_1") (+ "+") (number_literal "0x2188")) () ")")))) (+ "+") (number_literal "0x1c"))) (; ";")) (} "}")))) (if_statement "if (local_1a4 != local_19c) {\n        FUN_001e6db0(local_1a4);\n      }" (if "if") (parenthesized_expression "(local_1a4 != local_19c)" (( "(") (binary_expression "local_1a4 != local_19c" (identifier "local_1a4") (!= "!=") (identifier "local_19c")) () ")")) (compound_statement "{\n        FUN_001e6db0(local_1a4);\n      }" ({ "{") (expression_statement "FUN_001e6db0(local_1a4);" (call_expression "FUN_001e6db0(local_1a4)" (identifier "FUN_001e6db0") (argument_list "(local_1a4)" (( "(") (identifier "local_1a4") () ")"))) (; ";")) (} "}"))) (if_statement "if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }" (if "if") (parenthesized_expression "(local_134 != local_1dc)" (( "(") (binary_expression "local_134 != local_1dc" (identifier "local_134") (!= "!=") (identifier "local_1dc")) () ")")) (compound_statement "{\n        FUN_001e6db0(local_134);\n      }" ({ "{") (expression_statement "FUN_001e6db0(local_134);" (call_expression "FUN_001e6db0(local_134)" (identifier "FUN_001e6db0") (argument_list "(local_134)" (( "(") (identifier "local_134") () ")"))) (; ";")) (} "}"))) (expression_statement "local_134 = local_1dc;" (assignment_expression "local_134 = local_1dc" (identifier "local_134") (= "=") (identifier "local_1dc")) (; ";")) (expression_statement "FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0);" (call_expression "FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0)" (identifier "FUN_00050e40") (argument_list "(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0)" (( "(") (identifier "local_1d0") (, ",") (binary_expression "(int)local_1c4 + -0x1003c3" (cast_expression "(int)local_1c4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1c4")) (+ "+") (number_literal "-0x1003c3")) (, ",") (binary_expression "(int)local_1c4 + -0x1003b2" (cast_expression "(int)local_1c4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1c4")) (+ "+") (number_literal "-0x1003b2")) (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "local_188 = local_180;" (assignment_expression "local_188 = local_180" (identifier "local_188") (= "=") (identifier "local_180")) (; ";")) (expression_statement "FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0);" (call_expression "FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0)" (identifier "FUN_000513a0") (argument_list "(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0)" (( "(") (pointer_expression "&local_188" (& "&") (identifier "local_188")) (, ",") (identifier "local_134") (, ",") (cast_expression "(undefined *)(local_130 + (int)local_134)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_130 + (int)local_134)" (( "(") (binary_expression "local_130 + (int)local_134" (identifier "local_130") (+ "+") (cast_expression "(int)local_134" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_134"))) () ")"))) (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "local_170 = 1;" (assignment_expression "local_170 = 1" (identifier "local_170") (= "=") (number_literal "1")) (; ";")) (if_statement "if (local_184 == 0) {\n                    \n        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);\n      }" (if "if") (parenthesized_expression "(local_184 == 0)" (( "(") (binary_expression "local_184 == 0" (identifier "local_184") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);\n      }" ({ "{") (expression_statement "FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);" (call_expression "FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1)" (identifier "FUN_001ef9f0") (argument_list "(&local_188,0,0,(int)local_1c4 + -0x1013b5,1)" (( "(") (pointer_expression "&local_188" (& "&") (identifier "local_188")) (, ",") (number_literal "0") (, ",") (number_literal "0") (, ",") (binary_expression "(int)local_1c4 + -0x1013b5" (cast_expression "(int)local_1c4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1c4")) (+ "+") (number_literal "-0x1013b5")) (, ",") (number_literal "1") () ")"))) (; ";")) (} "}"))) (expression_statement "piVar7 = *(int **)(param_1 + 0x2188);" (assignment_expression "piVar7 = *(int **)(param_1 + 0x2188)" (identifier "piVar7") (= "=") (pointer_expression "*(int **)(param_1 + 0x2188)" (* "*") (cast_expression "(int **)(param_1 + 0x2188)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x2188)" (( "(") (binary_expression "param_1 + 0x2188" (identifier "param_1") (+ "+") (number_literal "0x2188")) () ")"))))) (; ";")) (if_statement "if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_188);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" (if "if") (parenthesized_expression "(piVar7 == *(int **)(param_1 + 0x218c))" (( "(") (binary_expression "piVar7 == *(int **)(param_1 + 0x218c)" (identifier "piVar7") (== "==") (pointer_expression "*(int **)(param_1 + 0x218c)" (* "*") (cast_expression "(int **)(param_1 + 0x218c)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x218c)" (( "(") (binary_expression "param_1 + 0x218c" (identifier "param_1") (+ "+") (number_literal "0x218c")) () ")"))))) () ")")) (compound_statement "{\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_188);\n      }" ({ "{") (expression_statement "FUN_000eae90(local_1d8,piVar7,&local_188);" (call_expression "FUN_000eae90(local_1d8,piVar7,&local_188)" (identifier "FUN_000eae90") (argument_list "(local_1d8,piVar7,&local_188)" (( "(") (identifier "local_1d8") (, ",") (identifier "piVar7") (, ",") (pointer_expression "&local_188" (& "&") (identifier "local_188")) () ")"))) (; ";")) (} "}")) (else_clause "else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" (else "else") (compound_statement "{\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" ({ "{") (expression_statement "*piVar7 = (int)(piVar7 + 2);" (assignment_expression "*piVar7 = (int)(piVar7 + 2)" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (= "=") (cast_expression "(int)(piVar7 + 2)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(piVar7 + 2)" (( "(") (binary_expression "piVar7 + 2" (identifier "piVar7") (+ "+") (number_literal "2")) () ")")))) (; ";")) (expression_statement "FUN_000513a0(piVar7,local_188,local_188 + local_184,0);" (call_expression "FUN_000513a0(piVar7,local_188,local_188 + local_184,0)" (identifier "FUN_000513a0") (argument_list "(piVar7,local_188,local_188 + local_184,0)" (( "(") (identifier "piVar7") (, ",") (identifier "local_188") (, ",") (binary_expression "local_188 + local_184" (identifier "local_188") (+ "+") (identifier "local_184")) (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "*(undefined1 *)(piVar7 + 6) = (undefined1)local_170;" (assignment_expression "*(undefined1 *)(piVar7 + 6) = (undefined1)local_170" (pointer_expression "*(undefined1 *)(piVar7 + 6)" (* "*") (cast_expression "(undefined1 *)(piVar7 + 6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar7 + 6)" (( "(") (binary_expression "piVar7 + 6" (identifier "piVar7") (+ "+") (number_literal "6")) () ")")))) (= "=") (cast_expression "(undefined1)local_170" (( "(") (type_descriptor "undefined1" (type_identifier "undefined1")) () ")") (identifier "local_170"))) (; ";")) (expression_statement "*(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;" (assignment_expression "*(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_" (pointer_expression "*(undefined1 *)((int)piVar7 + 0x19)" (* "*") (cast_expression "(undefined1 *)((int)piVar7 + 0x19)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar7 + 0x19)" (( "(") (binary_expression "(int)piVar7 + 0x19" (cast_expression "(int)piVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar7")) (+ "+") (number_literal "0x19")) () ")")))) (= "=") (field_expression "local_170._1_1_" (identifier "local_170") (. ".") (field_identifier "_1_1_"))) (; ";")) (expression_statement "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;" (assignment_expression "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" (* "*") (cast_expression "(int *)(param_1 + 0x2188)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x2188)" (( "(") (binary_expression "param_1 + 0x2188" (identifier "param_1") (+ "+") (number_literal "0x2188")) () ")")))) (= "=") (binary_expression "*(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" (* "*") (cast_expression "(int *)(param_1 + 0x2188)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x2188)" (( "(") (binary_expression "param_1 + 0x2188" (identifier "param_1") (+ "+") (number_literal "0x2188")) () ")")))) (+ "+") (number_literal "0x1c"))) (; ";")) (} "}")))) (if_statement "if (local_188 != local_180) {\n        FUN_001e6db0(local_188);\n      }" (if "if") (parenthesized_expression "(local_188 != local_180)" (( "(") (binary_expression "local_188 != local_180" (identifier "local_188") (!= "!=") (identifier "local_180")) () ")")) (compound_statement "{\n        FUN_001e6db0(local_188);\n      }" ({ "{") (expression_statement "FUN_001e6db0(local_188);" (call_expression "FUN_001e6db0(local_188)" (identifier "FUN_001e6db0") (argument_list "(local_188)" (( "(") (identifier "local_188") () ")"))) (; ";")) (} "}"))) (if_statement "if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }" (if "if") (parenthesized_expression "(local_134 != local_1dc)" (( "(") (binary_expression "local_134 != local_1dc" (identifier "local_134") (!= "!=") (identifier "local_1dc")) () ")")) (compound_statement "{\n        FUN_001e6db0(local_134);\n      }" ({ "{") (expression_statement "FUN_001e6db0(local_134);" (call_expression "FUN_001e6db0(local_134)" (identifier "FUN_001e6db0") (argument_list "(local_134)" (( "(") (identifier "local_134") () ")"))) (; ";")) (} "}"))) (expression_statement "local_134 = local_1dc;" (assignment_expression "local_134 = local_1dc" (identifier "local_134") (= "=") (identifier "local_1dc")) (; ";")) (expression_statement "FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0);" (call_expression "FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0)" (identifier "FUN_00050e40") (argument_list "(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0)" (( "(") (identifier "local_1d0") (, ",") (binary_expression "(int)local_1c4 + -0x1003ad" (cast_expression "(int)local_1c4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1c4")) (+ "+") (number_literal "-0x1003ad")) (, ",") (binary_expression "(int)local_1c4 + -0x1003a9" (cast_expression "(int)local_1c4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1c4")) (+ "+") (number_literal "-0x1003a9")) (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "local_16c = local_164;" (assignment_expression "local_16c = local_164" (identifier "local_16c") (= "=") (identifier "local_164")) (; ";")) (expression_statement "FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0);" (call_expression "FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0)" (identifier "FUN_000513a0") (argument_list "(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0)" (( "(") (pointer_expression "&local_16c" (& "&") (identifier "local_16c")) (, ",") (identifier "local_134") (, ",") (cast_expression "(undefined *)(local_130 + (int)local_134)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_130 + (int)local_134)" (( "(") (binary_expression "local_130 + (int)local_134" (identifier "local_130") (+ "+") (cast_expression "(int)local_134" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_134"))) () ")"))) (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "local_154 = 1;" (assignment_expression "local_154 = 1" (identifier "local_154") (= "=") (number_literal "1")) (; ";")) (if_statement "if (local_168 == 0) {\n                    \n        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);\n      }" (if "if") (parenthesized_expression "(local_168 == 0)" (( "(") (binary_expression "local_168 == 0" (identifier "local_168") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);\n      }" ({ "{") (expression_statement "FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);" (call_expression "FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1)" (identifier "FUN_001ef9f0") (argument_list "(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1)" (( "(") (pointer_expression "&local_16c" (& "&") (identifier "local_16c")) (, ",") (number_literal "0") (, ",") (number_literal "0") (, ",") (binary_expression "(int)local_1c4 + -0x1013b5" (cast_expression "(int)local_1c4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1c4")) (+ "+") (number_literal "-0x1013b5")) (, ",") (number_literal "1") () ")"))) (; ";")) (} "}"))) (expression_statement "piVar7 = *(int **)(param_1 + 0x2188);" (assignment_expression "piVar7 = *(int **)(param_1 + 0x2188)" (identifier "piVar7") (= "=") (pointer_expression "*(int **)(param_1 + 0x2188)" (* "*") (cast_expression "(int **)(param_1 + 0x2188)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x2188)" (( "(") (binary_expression "param_1 + 0x2188" (identifier "param_1") (+ "+") (number_literal "0x2188")) () ")"))))) (; ";")) (if_statement "if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_16c);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" (if "if") (parenthesized_expression "(piVar7 == *(int **)(param_1 + 0x218c))" (( "(") (binary_expression "piVar7 == *(int **)(param_1 + 0x218c)" (identifier "piVar7") (== "==") (pointer_expression "*(int **)(param_1 + 0x218c)" (* "*") (cast_expression "(int **)(param_1 + 0x218c)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x218c)" (( "(") (binary_expression "param_1 + 0x218c" (identifier "param_1") (+ "+") (number_literal "0x218c")) () ")"))))) () ")")) (compound_statement "{\n                    \n        FUN_000eae90(local_1d8,piVar7,&local_16c);\n      }" ({ "{") (expression_statement "FUN_000eae90(local_1d8,piVar7,&local_16c);" (call_expression "FUN_000eae90(local_1d8,piVar7,&local_16c)" (identifier "FUN_000eae90") (argument_list "(local_1d8,piVar7,&local_16c)" (( "(") (identifier "local_1d8") (, ",") (identifier "piVar7") (, ",") (pointer_expression "&local_16c" (& "&") (identifier "local_16c")) () ")"))) (; ";")) (} "}")) (else_clause "else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" (else "else") (compound_statement "{\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" ({ "{") (expression_statement "*piVar7 = (int)(piVar7 + 2);" (assignment_expression "*piVar7 = (int)(piVar7 + 2)" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (= "=") (cast_expression "(int)(piVar7 + 2)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(piVar7 + 2)" (( "(") (binary_expression "piVar7 + 2" (identifier "piVar7") (+ "+") (number_literal "2")) () ")")))) (; ";")) (expression_statement "FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);" (call_expression "FUN_000513a0(piVar7,local_16c,local_16c + local_168,0)" (identifier "FUN_000513a0") (argument_list "(piVar7,local_16c,local_16c + local_168,0)" (( "(") (identifier "piVar7") (, ",") (identifier "local_16c") (, ",") (binary_expression "local_16c + local_168" (identifier "local_16c") (+ "+") (identifier "local_168")) (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "*(undefined1 *)(piVar7 + 6) = (undefined1)local_154;" (assignment_expression "*(undefined1 *)(piVar7 + 6) = (undefined1)local_154" (pointer_expression "*(undefined1 *)(piVar7 + 6)" (* "*") (cast_expression "(undefined1 *)(piVar7 + 6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar7 + 6)" (( "(") (binary_expression "piVar7 + 6" (identifier "piVar7") (+ "+") (number_literal "6")) () ")")))) (= "=") (cast_expression "(undefined1)local_154" (( "(") (type_descriptor "undefined1" (type_identifier "undefined1")) () ")") (identifier "local_154"))) (; ";")) (expression_statement "*(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;" (assignment_expression "*(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_" (pointer_expression "*(undefined1 *)((int)piVar7 + 0x19)" (* "*") (cast_expression "(undefined1 *)((int)piVar7 + 0x19)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar7 + 0x19)" (( "(") (binary_expression "(int)piVar7 + 0x19" (cast_expression "(int)piVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar7")) (+ "+") (number_literal "0x19")) () ")")))) (= "=") (field_expression "local_154._1_1_" (identifier "local_154") (. ".") (field_identifier "_1_1_"))) (; ";")) (expression_statement "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;" (assignment_expression "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" (* "*") (cast_expression "(int *)(param_1 + 0x2188)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x2188)" (( "(") (binary_expression "param_1 + 0x2188" (identifier "param_1") (+ "+") (number_literal "0x2188")) () ")")))) (= "=") (binary_expression "*(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" (* "*") (cast_expression "(int *)(param_1 + 0x2188)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x2188)" (( "(") (binary_expression "param_1 + 0x2188" (identifier "param_1") (+ "+") (number_literal "0x2188")) () ")")))) (+ "+") (number_literal "0x1c"))) (; ";")) (} "}")))) (if_statement "if (local_16c != local_164) {\n        FUN_001e6db0(local_16c);\n      }" (if "if") (parenthesized_expression "(local_16c != local_164)" (( "(") (binary_expression "local_16c != local_164" (identifier "local_16c") (!= "!=") (identifier "local_164")) () ")")) (compound_statement "{\n        FUN_001e6db0(local_16c);\n      }" ({ "{") (expression_statement "FUN_001e6db0(local_16c);" (call_expression "FUN_001e6db0(local_16c)" (identifier "FUN_001e6db0") (argument_list "(local_16c)" (( "(") (identifier "local_16c") () ")"))) (; ";")) (} "}"))) (if_statement "if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }" (if "if") (parenthesized_expression "(local_134 != local_1dc)" (( "(") (binary_expression "local_134 != local_1dc" (identifier "local_134") (!= "!=") (identifier "local_1dc")) () ")")) (compound_statement "{\n        FUN_001e6db0(local_134);\n      }" ({ "{") (expression_statement "FUN_001e6db0(local_134);" (call_expression "FUN_001e6db0(local_134)" (identifier "FUN_001e6db0") (argument_list "(local_134)" (( "(") (identifier "local_134") () ")"))) (; ";")) (} "}"))) (expression_statement "local_134 = local_1dc;" (assignment_expression "local_134 = local_1dc" (identifier "local_134") (= "=") (identifier "local_1dc")) (; ";")) (expression_statement "FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0);" (call_expression "FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0)" (identifier "FUN_00050e40") (argument_list "(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0)" (( "(") (identifier "local_1d0") (, ",") (binary_expression "(int)local_1c4 + -0x1003b1" (cast_expression "(int)local_1c4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1c4")) (+ "+") (number_literal "-0x1003b1")) (, ",") (binary_expression "(int)local_1c4 + -0x1003a9" (cast_expression "(int)local_1c4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1c4")) (+ "+") (number_literal "-0x1003a9")) (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "local_1e0 = local_148;" (assignment_expression "local_1e0 = local_148" (identifier "local_1e0") (= "=") (identifier "local_148")) (; ";")) (expression_statement "local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);" (assignment_expression "local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150)" (identifier "local_1cc") (= "=") (cast_expression "(double)CONCAT44(local_1cc._4_4_,&local_150)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT44(local_1cc._4_4_,&local_150)" (identifier "CONCAT44") (argument_list "(local_1cc._4_4_,&local_150)" (( "(") (field_expression "local_1cc._4_4_" (identifier "local_1cc") (. ".") (field_identifier "_4_4_")) (, ",") (pointer_expression "&local_150" (& "&") (identifier "local_150")) () ")"))))) (; ";")) (expression_statement "local_150 = local_1e0;" (assignment_expression "local_150 = local_1e0" (identifier "local_150") (= "=") (identifier "local_1e0")) (; ";")) (expression_statement "FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0);" (call_expression "FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0)" (identifier "FUN_000513a0") (argument_list "(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0)" (( "(") (pointer_expression "&local_150" (& "&") (identifier "local_150")) (, ",") (identifier "local_134") (, ",") (cast_expression "(undefined *)(local_130 + (int)local_134)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_130 + (int)local_134)" (( "(") (binary_expression "local_130 + (int)local_134" (identifier "local_130") (+ "+") (cast_expression "(int)local_134" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_134"))) () ")"))) (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "local_138 = 1;" (assignment_expression "local_138 = 1" (identifier "local_138") (= "=") (number_literal "1")) (; ";")) (if_statement "if (local_14c == 0) {\n                    \n        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);\n      }" (if "if") (parenthesized_expression "(local_14c == 0)" (( "(") (binary_expression "local_14c == 0" (identifier "local_14c") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);\n      }" ({ "{") (expression_statement "FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);" (call_expression "FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1)" (identifier "FUN_001ef9f0") (argument_list "(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1)" (( "(") (field_expression "local_1cc._0_4_" (identifier "local_1cc") (. ".") (field_identifier "_0_4_")) (, ",") (number_literal "0") (, ",") (number_literal "0") (, ",") (binary_expression "(int)local_1c4 + -0x1013b5" (cast_expression "(int)local_1c4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1c4")) (+ "+") (number_literal "-0x1013b5")) (, ",") (number_literal "1") () ")"))) (; ";")) (} "}"))) (expression_statement "piVar7 = *(int **)(param_1 + 0x2188);" (assignment_expression "piVar7 = *(int **)(param_1 + 0x2188)" (identifier "piVar7") (= "=") (pointer_expression "*(int **)(param_1 + 0x2188)" (* "*") (cast_expression "(int **)(param_1 + 0x2188)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x2188)" (( "(") (binary_expression "param_1 + 0x2188" (identifier "param_1") (+ "+") (number_literal "0x2188")) () ")"))))) (; ";")) (if_statement "if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);\n      }\n      else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" (if "if") (parenthesized_expression "(piVar7 == *(int **)(param_1 + 0x218c))" (( "(") (binary_expression "piVar7 == *(int **)(param_1 + 0x218c)" (identifier "piVar7") (== "==") (pointer_expression "*(int **)(param_1 + 0x218c)" (* "*") (cast_expression "(int **)(param_1 + 0x218c)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x218c)" (( "(") (binary_expression "param_1 + 0x218c" (identifier "param_1") (+ "+") (number_literal "0x218c")) () ")"))))) () ")")) (compound_statement "{\n                    \n        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);\n      }" ({ "{") (expression_statement "FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);" (call_expression "FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_)" (identifier "FUN_000eae90") (argument_list "(local_1d8,piVar7,local_1cc._0_4_)" (( "(") (identifier "local_1d8") (, ",") (identifier "piVar7") (, ",") (field_expression "local_1cc._0_4_" (identifier "local_1cc") (. ".") (field_identifier "_0_4_")) () ")"))) (; ";")) (} "}")) (else_clause "else {\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" (else "else") (compound_statement "{\n        *piVar7 = (int)(piVar7 + 2);\n                    \n        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);\n        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;\n        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;\n        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n      }" ({ "{") (expression_statement "*piVar7 = (int)(piVar7 + 2);" (assignment_expression "*piVar7 = (int)(piVar7 + 2)" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (= "=") (cast_expression "(int)(piVar7 + 2)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(piVar7 + 2)" (( "(") (binary_expression "piVar7 + 2" (identifier "piVar7") (+ "+") (number_literal "2")) () ")")))) (; ";")) (expression_statement "FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);" (call_expression "FUN_000513a0(piVar7,local_150,local_150 + local_14c,0)" (identifier "FUN_000513a0") (argument_list "(piVar7,local_150,local_150 + local_14c,0)" (( "(") (identifier "piVar7") (, ",") (identifier "local_150") (, ",") (binary_expression "local_150 + local_14c" (identifier "local_150") (+ "+") (identifier "local_14c")) (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "*(undefined1 *)(piVar7 + 6) = (undefined1)local_138;" (assignment_expression "*(undefined1 *)(piVar7 + 6) = (undefined1)local_138" (pointer_expression "*(undefined1 *)(piVar7 + 6)" (* "*") (cast_expression "(undefined1 *)(piVar7 + 6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar7 + 6)" (( "(") (binary_expression "piVar7 + 6" (identifier "piVar7") (+ "+") (number_literal "6")) () ")")))) (= "=") (cast_expression "(undefined1)local_138" (( "(") (type_descriptor "undefined1" (type_identifier "undefined1")) () ")") (identifier "local_138"))) (; ";")) (expression_statement "*(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;" (assignment_expression "*(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_" (pointer_expression "*(undefined1 *)((int)piVar7 + 0x19)" (* "*") (cast_expression "(undefined1 *)((int)piVar7 + 0x19)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar7 + 0x19)" (( "(") (binary_expression "(int)piVar7 + 0x19" (cast_expression "(int)piVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar7")) (+ "+") (number_literal "0x19")) () ")")))) (= "=") (field_expression "local_138._1_1_" (identifier "local_138") (. ".") (field_identifier "_1_1_"))) (; ";")) (expression_statement "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;" (assignment_expression "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" (* "*") (cast_expression "(int *)(param_1 + 0x2188)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x2188)" (( "(") (binary_expression "param_1 + 0x2188" (identifier "param_1") (+ "+") (number_literal "0x2188")) () ")")))) (= "=") (binary_expression "*(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" (* "*") (cast_expression "(int *)(param_1 + 0x2188)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x2188)" (( "(") (binary_expression "param_1 + 0x2188" (identifier "param_1") (+ "+") (number_literal "0x2188")) () ")")))) (+ "+") (number_literal "0x1c"))) (; ";")) (} "}")))) (if_statement "if (local_150 != local_1e0) {\n        FUN_001e6db0(local_150);\n      }" (if "if") (parenthesized_expression "(local_150 != local_1e0)" (( "(") (binary_expression "local_150 != local_1e0" (identifier "local_150") (!= "!=") (identifier "local_1e0")) () ")")) (compound_statement "{\n        FUN_001e6db0(local_150);\n      }" ({ "{") (expression_statement "FUN_001e6db0(local_150);" (call_expression "FUN_001e6db0(local_150)" (identifier "FUN_001e6db0") (argument_list "(local_150)" (( "(") (identifier "local_150") () ")"))) (; ";")) (} "}"))) (if_statement "if (local_134 != local_1dc) {\n        FUN_001e6db0(local_134);\n      }" (if "if") (parenthesized_expression "(local_134 != local_1dc)" (( "(") (binary_expression "local_134 != local_1dc" (identifier "local_134") (!= "!=") (identifier "local_1dc")) () ")")) (compound_statement "{\n        FUN_001e6db0(local_134);\n      }" ({ "{") (expression_statement "FUN_001e6db0(local_134);" (call_expression "FUN_001e6db0(local_134)" (identifier "FUN_001e6db0") (argument_list "(local_134)" (( "(") (identifier "local_134") () ")"))) (; ";")) (} "}"))) (goto_statement "goto LAB_000e7f08;" (goto "goto") (statement_identifier "LAB_000e7f08") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n    pcVar12 = *(char **)(param_1 + 0x4cac);\n    sVar9 = strlen(pcVar12);\n    ppuVar3 = local_1d4;\n                    \n    FUN_001ef9f0(local_1d4,0,0,pcVar12,sVar9);\n    iVar14 = FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6);\n    if (iVar14 == 0) {\n      uVar6 = local_1b8;\n      if (2 < local_1b8) {\n        uVar6 = 2;\n      }\n                    \n      FUN_001eebf0(local_1d4,0,uVar6);\n    }\nLAB_000e7f08:\n    uVar6 = 0;\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n    if (local_1b8 != 0) {\n      do {\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    \n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      } while( true );\n    }\n  }" (else "else") (compound_statement "{\n    pcVar12 = *(char **)(param_1 + 0x4cac);\n    sVar9 = strlen(pcVar12);\n    ppuVar3 = local_1d4;\n                    \n    FUN_001ef9f0(local_1d4,0,0,pcVar12,sVar9);\n    iVar14 = FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6);\n    if (iVar14 == 0) {\n      uVar6 = local_1b8;\n      if (2 < local_1b8) {\n        uVar6 = 2;\n      }\n                    \n      FUN_001eebf0(local_1d4,0,uVar6);\n    }\nLAB_000e7f08:\n    uVar6 = 0;\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n    if (local_1b8 != 0) {\n      do {\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    \n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      } while( true );\n    }\n  }" ({ "{") (expression_statement "pcVar12 = *(char **)(param_1 + 0x4cac);" (assignment_expression "pcVar12 = *(char **)(param_1 + 0x4cac)" (identifier "pcVar12") (= "=") (pointer_expression "*(char **)(param_1 + 0x4cac)" (* "*") (cast_expression "(char **)(param_1 + 0x4cac)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x4cac)" (( "(") (binary_expression "param_1 + 0x4cac" (identifier "param_1") (+ "+") (number_literal "0x4cac")) () ")"))))) (; ";")) (expression_statement "sVar9 = strlen(pcVar12);" (assignment_expression "sVar9 = strlen(pcVar12)" (identifier "sVar9") (= "=") (call_expression "strlen(pcVar12)" (identifier "strlen") (argument_list "(pcVar12)" (( "(") (identifier "pcVar12") () ")")))) (; ";")) (expression_statement "ppuVar3 = local_1d4;" (assignment_expression "ppuVar3 = local_1d4" (identifier "ppuVar3") (= "=") (identifier "local_1d4")) (; ";")) (expression_statement "FUN_001ef9f0(local_1d4,0,0,pcVar12,sVar9);" (call_expression "FUN_001ef9f0(local_1d4,0,0,pcVar12,sVar9)" (identifier "FUN_001ef9f0") (argument_list "(local_1d4,0,0,pcVar12,sVar9)" (( "(") (identifier "local_1d4") (, ",") (number_literal "0") (, ",") (number_literal "0") (, ",") (identifier "pcVar12") (, ",") (identifier "sVar9") () ")"))) (; ";")) (expression_statement "iVar14 = FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6);" (assignment_expression "iVar14 = FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6)" (identifier "iVar14") (= "=") (call_expression "FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6)" (identifier "FUN_001f13d0") (argument_list "(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6)" (( "(") (identifier "ppuVar3") (, ",") (number_literal "0") (, ",") (number_literal "2") (, ",") (binary_expression "(int)ppuVar4 + -0x1003c6" (cast_expression "(int)ppuVar4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppuVar4")) (+ "+") (number_literal "-0x1003c6")) () ")")))) (; ";")) (if_statement "if (iVar14 == 0) {\n      uVar6 = local_1b8;\n      if (2 < local_1b8) {\n        uVar6 = 2;\n      }\n                    \n      FUN_001eebf0(local_1d4,0,uVar6);\n    }" (if "if") (parenthesized_expression "(iVar14 == 0)" (( "(") (binary_expression "iVar14 == 0" (identifier "iVar14") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      uVar6 = local_1b8;\n      if (2 < local_1b8) {\n        uVar6 = 2;\n      }\n                    \n      FUN_001eebf0(local_1d4,0,uVar6);\n    }" ({ "{") (expression_statement "uVar6 = local_1b8;" (assignment_expression "uVar6 = local_1b8" (identifier "uVar6") (= "=") (identifier "local_1b8")) (; ";")) (if_statement "if (2 < local_1b8) {\n        uVar6 = 2;\n      }" (if "if") (parenthesized_expression "(2 < local_1b8)" (( "(") (binary_expression "2 < local_1b8" (number_literal "2") (< "<") (identifier "local_1b8")) () ")")) (compound_statement "{\n        uVar6 = 2;\n      }" ({ "{") (expression_statement "uVar6 = 2;" (assignment_expression "uVar6 = 2" (identifier "uVar6") (= "=") (number_literal "2")) (; ";")) (} "}"))) (expression_statement "FUN_001eebf0(local_1d4,0,uVar6);" (call_expression "FUN_001eebf0(local_1d4,0,uVar6)" (identifier "FUN_001eebf0") (argument_list "(local_1d4,0,uVar6)" (( "(") (identifier "local_1d4") (, ",") (number_literal "0") (, ",") (identifier "uVar6") () ")"))) (; ";")) (} "}"))) (labeled_statement "LAB_000e7f08:\n    uVar6 = 0;" (statement_identifier "LAB_000e7f08") (: ":") (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" (identifier "uVar6") (= "=") (number_literal "0")) (; ";"))) (expression_statement "local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);" (assignment_expression "local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150)" (identifier "local_1cc") (= "=") (cast_expression "(double)CONCAT44(local_1cc._4_4_,&local_150)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT44(local_1cc._4_4_,&local_150)" (identifier "CONCAT44") (argument_list "(local_1cc._4_4_,&local_150)" (( "(") (field_expression "local_1cc._4_4_" (identifier "local_1cc") (. ".") (field_identifier "_4_4_")) (, ",") (pointer_expression "&local_150" (& "&") (identifier "local_150")) () ")"))))) (; ";")) (if_statement "if (local_1b8 != 0) {\n      do {\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    \n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      } while( true );\n    }" (if "if") (parenthesized_expression "(local_1b8 != 0)" (( "(") (binary_expression "local_1b8 != 0" (identifier "local_1b8") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      do {\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    \n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      } while( true );\n    }" ({ "{") (do_statement "do {\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    \n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      } while( true );" (do "do") (compound_statement "{\n        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);\n        uVar16 = 0xffffffff;\n        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    \n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }\n        uVar6 = iVar14 + 1;\n      }" ({ "{") (expression_statement "iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);" (assignment_expression "iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6)" (identifier "iVar14") (= "=") (call_expression "FUN_001f0c10(local_1d4,0x3a,uVar6)" (identifier "FUN_001f0c10") (argument_list "(local_1d4,0x3a,uVar6)" (( "(") (identifier "local_1d4") (, ",") (number_literal "0x3a") (, ",") (identifier "uVar6") () ")")))) (; ";")) (expression_statement "uVar16 = 0xffffffff;" (assignment_expression "uVar16 = 0xffffffff" (identifier "uVar16") (= "=") (number_literal "0xffffffff")) (; ";")) (if_statement "if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {\n          if (local_1b8 < uVar6) {\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    \n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }" (if "if") (parenthesized_expression "((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0))" (( "(") (binary_expression "(iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)" (parenthesized_expression "(iVar14 == -1)" (( "(") (binary_expression "iVar14 == -1" (identifier "iVar14") (== "==") (number_literal "-1")) () ")")) (|| "||") (parenthesized_expression "(uVar16 = iVar14 - uVar6, uVar16 != 0)" (( "(") (comma_expression "uVar16 = iVar14 - uVar6, uVar16 != 0" (assignment_expression "uVar16 = iVar14 - uVar6" (identifier "uVar16") (= "=") (binary_expression "iVar14 - uVar6" (identifier "iVar14") (- "-") (identifier "uVar6"))) (, ",") (binary_expression "uVar16 != 0" (identifier "uVar16") (!= "!=") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n          if (local_1b8 < uVar6) {\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }\n          local_1e0 = local_148;\n          uVar10 = local_1b8 - uVar6;\n          if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }\n          local_150 = local_1e0;\n          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);\n          local_1dc = local_12c;\n          local_1d0 = (undefined ***)&local_134;\n          local_134 = local_1dc;\n                    \n          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);\n          local_11c = 1;\n          if (local_130 == 0) {\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }\n          piVar7 = *(int **)(param_1 + 0x2188);\n          if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }\n          if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }\n          if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }\n          if (iVar14 == -1) break;\n        }" ({ "{") (if_statement "if (local_1b8 < uVar6) {\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }" (if "if") (parenthesized_expression "(local_1b8 < uVar6)" (( "(") (binary_expression "local_1b8 < uVar6" (identifier "local_1b8") (< "<") (identifier "uVar6")) () ")")) (compound_statement "{\n                    \n            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);\n          }" ({ "{") (expression_statement "FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);" (call_expression "FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8)" (identifier "FUN_0022c840") (argument_list "(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8)" (( "(") (binary_expression "local_1c4 + -0x4104f" (identifier "local_1c4") (+ "+") (number_literal "-0x4104f")) (, ",") (binary_expression "local_1c4 + -0x400ea" (identifier "local_1c4") (+ "+") (number_literal "-0x400ea")) (, ",") (identifier "uVar6") (, ",") (identifier "local_1b8") () ")"))) (; ";")) (} "}"))) (expression_statement "local_1e0 = local_148;" (assignment_expression "local_1e0 = local_148" (identifier "local_1e0") (= "=") (identifier "local_148")) (; ";")) (expression_statement "uVar10 = local_1b8 - uVar6;" (assignment_expression "uVar10 = local_1b8 - uVar6" (identifier "uVar10") (= "=") (binary_expression "local_1b8 - uVar6" (identifier "local_1b8") (- "-") (identifier "uVar6"))) (; ";")) (if_statement "if (uVar16 < local_1b8 - uVar6) {\n            uVar10 = uVar16;\n          }" (if "if") (parenthesized_expression "(uVar16 < local_1b8 - uVar6)" (( "(") (binary_expression "uVar16 < local_1b8 - uVar6" (identifier "uVar16") (< "<") (binary_expression "local_1b8 - uVar6" (identifier "local_1b8") (- "-") (identifier "uVar6"))) () ")")) (compound_statement "{\n            uVar10 = uVar16;\n          }" ({ "{") (expression_statement "uVar10 = uVar16;" (assignment_expression "uVar10 = uVar16" (identifier "uVar10") (= "=") (identifier "uVar16")) (; ";")) (} "}"))) (expression_statement "local_150 = local_1e0;" (assignment_expression "local_150 = local_1e0" (identifier "local_150") (= "=") (identifier "local_1e0")) (; ";")) (expression_statement "FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);" (call_expression "FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0)" (identifier "FUN_00050e40") (argument_list "(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0)" (( "(") (field_expression "local_1cc._0_4_" (identifier "local_1cc") (. ".") (field_identifier "_0_4_")) (, ",") (binary_expression "local_1bc + uVar6" (identifier "local_1bc") (+ "+") (identifier "uVar6")) (, ",") (binary_expression "local_1bc + uVar6 + uVar10" (binary_expression "local_1bc + uVar6" (identifier "local_1bc") (+ "+") (identifier "uVar6")) (+ "+") (identifier "uVar10")) (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "local_1dc = local_12c;" (assignment_expression "local_1dc = local_12c" (identifier "local_1dc") (= "=") (identifier "local_12c")) (; ";")) (expression_statement "local_1d0 = (undefined ***)&local_134;" (assignment_expression "local_1d0 = (undefined ***)&local_134" (identifier "local_1d0") (= "=") (cast_expression "(undefined ***)&local_134" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (pointer_expression "&local_134" (& "&") (identifier "local_134")))) (; ";")) (expression_statement "local_134 = local_1dc;" (assignment_expression "local_134 = local_1dc" (identifier "local_134") (= "=") (identifier "local_1dc")) (; ";")) (expression_statement "FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);" (call_expression "FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0)" (identifier "FUN_000513a0") (argument_list "(local_1d0,local_150,local_150 + local_14c,0)" (( "(") (identifier "local_1d0") (, ",") (identifier "local_150") (, ",") (binary_expression "local_150 + local_14c" (identifier "local_150") (+ "+") (identifier "local_14c")) (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "local_11c = 1;" (assignment_expression "local_11c = 1" (identifier "local_11c") (= "=") (number_literal "1")) (; ";")) (if_statement "if (local_130 == 0) {\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }" (if "if") (parenthesized_expression "(local_130 == 0)" (( "(") (binary_expression "local_130 == 0" (identifier "local_130") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);\n          }" ({ "{") (expression_statement "FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);" (call_expression "FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1)" (identifier "FUN_001ef9f0") (argument_list "(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1)" (( "(") (identifier "local_1d0") (, ",") (number_literal "0") (, ",") (number_literal "0") (, ",") (binary_expression "(int)local_1c4 + -0x1013b5" (cast_expression "(int)local_1c4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1c4")) (+ "+") (number_literal "-0x1013b5")) (, ",") (number_literal "1") () ")"))) (; ";")) (} "}"))) (expression_statement "piVar7 = *(int **)(param_1 + 0x2188);" (assignment_expression "piVar7 = *(int **)(param_1 + 0x2188)" (identifier "piVar7") (= "=") (pointer_expression "*(int **)(param_1 + 0x2188)" (* "*") (cast_expression "(int **)(param_1 + 0x2188)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x2188)" (( "(") (binary_expression "param_1 + 0x2188" (identifier "param_1") (+ "+") (number_literal "0x2188")) () ")"))))) (; ";")) (if_statement "if (piVar7 == *(int **)(param_1 + 0x218c)) {\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }\n          else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }" (if "if") (parenthesized_expression "(piVar7 == *(int **)(param_1 + 0x218c))" (( "(") (binary_expression "piVar7 == *(int **)(param_1 + 0x218c)" (identifier "piVar7") (== "==") (pointer_expression "*(int **)(param_1 + 0x218c)" (* "*") (cast_expression "(int **)(param_1 + 0x218c)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x218c)" (( "(") (binary_expression "param_1 + 0x218c" (identifier "param_1") (+ "+") (number_literal "0x218c")) () ")"))))) () ")")) (compound_statement "{\n                    \n            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);\n          }" ({ "{") (expression_statement "FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);" (call_expression "FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0)" (identifier "FUN_000eae90") (argument_list "(param_1 + 0x2184,piVar7,local_1d0)" (( "(") (binary_expression "param_1 + 0x2184" (identifier "param_1") (+ "+") (number_literal "0x2184")) (, ",") (identifier "piVar7") (, ",") (identifier "local_1d0") () ")"))) (; ";")) (} "}")) (else_clause "else {\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }" (else "else") (compound_statement "{\n            *piVar7 = (int)(piVar7 + 2);\n                    \n            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);\n            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;\n            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;\n            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;\n          }" ({ "{") (expression_statement "*piVar7 = (int)(piVar7 + 2);" (assignment_expression "*piVar7 = (int)(piVar7 + 2)" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (= "=") (cast_expression "(int)(piVar7 + 2)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(piVar7 + 2)" (( "(") (binary_expression "piVar7 + 2" (identifier "piVar7") (+ "+") (number_literal "2")) () ")")))) (; ";")) (expression_statement "FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);" (call_expression "FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0)" (identifier "FUN_000513a0") (argument_list "(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0)" (( "(") (identifier "piVar7") (, ",") (identifier "local_134") (, ",") (cast_expression "(undefined *)(local_130 + (int)local_134)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_130 + (int)local_134)" (( "(") (binary_expression "local_130 + (int)local_134" (identifier "local_130") (+ "+") (cast_expression "(int)local_134" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_134"))) () ")"))) (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "*(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;" (assignment_expression "*(undefined1 *)(piVar7 + 6) = (undefined1)local_11c" (pointer_expression "*(undefined1 *)(piVar7 + 6)" (* "*") (cast_expression "(undefined1 *)(piVar7 + 6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar7 + 6)" (( "(") (binary_expression "piVar7 + 6" (identifier "piVar7") (+ "+") (number_literal "6")) () ")")))) (= "=") (cast_expression "(undefined1)local_11c" (( "(") (type_descriptor "undefined1" (type_identifier "undefined1")) () ")") (identifier "local_11c"))) (; ";")) (expression_statement "*(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;" (assignment_expression "*(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_" (pointer_expression "*(undefined1 *)((int)piVar7 + 0x19)" (* "*") (cast_expression "(undefined1 *)((int)piVar7 + 0x19)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar7 + 0x19)" (( "(") (binary_expression "(int)piVar7 + 0x19" (cast_expression "(int)piVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar7")) (+ "+") (number_literal "0x19")) () ")")))) (= "=") (field_expression "local_11c._1_1_" (identifier "local_11c") (. ".") (field_identifier "_1_1_"))) (; ";")) (expression_statement "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;" (assignment_expression "*(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" (* "*") (cast_expression "(int *)(param_1 + 0x2188)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x2188)" (( "(") (binary_expression "param_1 + 0x2188" (identifier "param_1") (+ "+") (number_literal "0x2188")) () ")")))) (= "=") (binary_expression "*(int *)(param_1 + 0x2188) + 0x1c" (pointer_expression "*(int *)(param_1 + 0x2188)" (* "*") (cast_expression "(int *)(param_1 + 0x2188)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x2188)" (( "(") (binary_expression "param_1 + 0x2188" (identifier "param_1") (+ "+") (number_literal "0x2188")) () ")")))) (+ "+") (number_literal "0x1c"))) (; ";")) (} "}")))) (if_statement "if (local_134 != local_1dc) {\n            FUN_001e6db0(local_134);\n          }" (if "if") (parenthesized_expression "(local_134 != local_1dc)" (( "(") (binary_expression "local_134 != local_1dc" (identifier "local_134") (!= "!=") (identifier "local_1dc")) () ")")) (compound_statement "{\n            FUN_001e6db0(local_134);\n          }" ({ "{") (expression_statement "FUN_001e6db0(local_134);" (call_expression "FUN_001e6db0(local_134)" (identifier "FUN_001e6db0") (argument_list "(local_134)" (( "(") (identifier "local_134") () ")"))) (; ";")) (} "}"))) (if_statement "if (local_150 != local_1e0) {\n            FUN_001e6db0(local_150);\n          }" (if "if") (parenthesized_expression "(local_150 != local_1e0)" (( "(") (binary_expression "local_150 != local_1e0" (identifier "local_150") (!= "!=") (identifier "local_1e0")) () ")")) (compound_statement "{\n            FUN_001e6db0(local_150);\n          }" ({ "{") (expression_statement "FUN_001e6db0(local_150);" (call_expression "FUN_001e6db0(local_150)" (identifier "FUN_001e6db0") (argument_list "(local_150)" (( "(") (identifier "local_150") () ")"))) (; ";")) (} "}"))) (if_statement "if (iVar14 == -1) break;" (if "if") (parenthesized_expression "(iVar14 == -1)" (( "(") (binary_expression "iVar14 == -1" (identifier "iVar14") (== "==") (number_literal "-1")) () ")")) (break_statement "break;" (break "break") (; ";"))) (} "}"))) (expression_statement "uVar6 = iVar14 + 1;" (assignment_expression "uVar6 = iVar14 + 1" (identifier "uVar6") (= "=") (binary_expression "iVar14 + 1" (identifier "iVar14") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (} "}"))) (} "}")))) (expression_statement "ppuVar4 = local_1c4;" (assignment_expression "ppuVar4 = local_1c4" (identifier "ppuVar4") (= "=") (identifier "local_1c4")) (; ";")) (expression_statement "puVar17 = auStack_20c;" (assignment_expression "puVar17 = auStack_20c" (identifier "puVar17") (= "=") (identifier "auStack_20c")) (; ";")) (expression_statement "puVar18 = auStack_20c;" (assignment_expression "puVar18 = auStack_20c" (identifier "puVar18") (= "=") (identifier "auStack_20c")) (; ";")) (if_statement "if (*(int *)(param_1 + 0x3288) != 0) {\n    local_1e8 = local_a4;\n    local_1d0 = (undefined ***)&local_134;\n    FUN_0022bca0(local_1e8);\n    local_1fc = ppuVar4 + -0xa14;\n    local_34 = 0;\n    local_2c = 0;\n    local_a4[0] = ppuVar4 + -0xa12;\n    local_30 = 0;\n    local_28 = 0;\n    local_1f4 = (undefined ***)ppuVar4[-0x9d9];\n    local_1f8 = ppuVar4[-0x9d8];\n    local_24 = 0;\n    local_20 = 0;\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n                    \n    FUN_00211450((int)local_1f4[-3] + (int)&local_134,0);\n    local_200 = ppuVar4 + -0x9d6;\n    local_134 = (undefined ***)(ppuVar4 + -0x9d3);\n    local_a4[0] = ppuVar4 + -0x9ce;\n    local_1dc = local_12c;\n                    \n    FUN_00213670(local_12c);\n                    \n    FUN_00211450(local_1e8,local_12c);\n                    \n    iVar14 = FUN_00217950(local_12c,*(undefined4 *)(param_1 + 0x3288),8);\n    puVar15 = (undefined *)((int)local_1d0 + (int)local_134[-3]);\n    if (iVar14 == 0) {\n                    \n      FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4);\n    }\n    else {\n      FUN_00210c00(puVar15,0);\n    }\n    ppuVar4 = local_1c4;\n    if ((local_90 & 5) != 0) {\n      piVar7 = __errno_location();\n      pcVar12 = strerror(*piVar7);\n      uVar11 = *(undefined4 *)(param_1 + 0x3288);\n      uVar13 = gettext(local_1c4 + -0x3f6cb);\n                    \n                    \n      FUN_00065450(uVar13,uVar11,pcVar12);\n    }\n    local_1e0 = local_148;\n    local_148[0] = 0;\n    local_14c = 0;\n    piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n    local_150 = local_1e0;\n    if (piVar7 == (int *)0x0) {\n                    \n                    \n      FUN_0022c630();\n    }\n    if ((char)piVar7[7] == '\0') {\n                    \n      FUN_0022ccc0(piVar7);\n      iVar14 = 10;\n      if (*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0) {\n        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);\n        iVar14 = (int)cVar5;\n      }\n    }\n    else {\n      iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n    }\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n                    \n    FUN_001e7cb0(local_1d0,&local_150,iVar14);\n    local_1d4 = (undefined1 **)(param_1 + 0x5a3c);\n    local_1e4 = local_1c0;\n    while ((local_90 & 5) == 0) {\n      if ((local_14c != 0) && (local_150[local_14c + -1] == '\r')) {\n        *(undefined4 *)(puVar17 + -8) = 0;\n        *(int *)(puVar17 + -0xc) = local_14c + -1;\n        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;\n        FUN_001ef780();\n      }\n      *(undefined4 *)(puVar17 + -8) = 0xc70f6907;\n      *(int *)(puVar17 + -0xc) = local_14c;\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe793a;\n      uVar6 = FUN_001e52b0();\n      local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40);\n      *(uint *)(puVar17 + -0x14) = uVar6;\n      *(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_;\n      *(uint *)(puVar17 + -0x1c) = local_1d8;\n      *(undefined1 ***)(puVar17 + -0x20) = local_1d4;\n      *(undefined4 *)(puVar17 + -0x24) = 0xe7960;\n      piVar7 = (int *)FUN_000eadf0();\n      if ((piVar7 == (int *)0x0) || (*piVar7 == 0)) {\n        *(undefined4 *)(puVar17 + -0x10) = 0x20;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;\n        puVar8 = (undefined4 *)FUN_001e5200();\n        *puVar8 = 0;\n        puVar8[1] = puVar8 + 3;\n        *(undefined4 *)(puVar17 + -4) = 0;\n        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;\n        *(undefined1 **)(puVar17 + -0xc) = local_150;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;\n        FUN_000513a0();\n        *(undefined4 *)(puVar17 + -0xc) = 1;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8;\n        *(uint *)(puVar17 + -0x14) = uVar6;\n        *(uint *)(puVar17 + -0x18) = local_1d8;\n        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;\n        *(undefined1 **)(puVar17 + -0x20) = local_1e4;\n                    \n        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;\n        FUN_000ec3b0();\n        puVar17 = puVar17 + -4;\n      }\n      ppuVar4 = local_1c4;\n      piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n      if (piVar7 == (int *)0x0) {\n                    \n                    \n        *(undefined4 *)(puVar17 + -4) = 0xe88af;\n        FUN_0022c630();\n      }\n      if ((char)piVar7[7] == '\0') {\n        *(int **)(puVar17 + -0x10) = piVar7;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;\n        FUN_0022ccc0();\n        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);\n        iVar14 = 10;\n        if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }\n      }\n      else {\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }\n      *(int *)(puVar17 + -8) = iVar14;\n      *(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_;\n      *(undefined ****)(puVar17 + -0x10) = local_1d0;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe78f7;\n      FUN_001e7cb0();\n    }\n    if (local_150 != local_1e0) {\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe7aef;\n      FUN_001e6db0();\n    }\n    ppuVar4 = local_1c4;\n    *(undefined ****)(puVar17 + -0x10) = local_1dc;\n    local_134 = (undefined ***)(local_200 + 3);\n    local_a4[0] = local_200 + 8;\n    local_12c[0] = local_1c4 + -0x9f2;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b2f;\n    FUN_00216e90();\n    *(undefined1 **)(puVar17 + -0x10) = local_f4;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b3d;\n    FUN_001e75f0();\n    local_12c[0] = ppuVar4 + -0xbd7;\n    *(undefined1 **)(puVar17 + -0x10) = local_110;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b5a;\n    FUN_001e9510();\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n    local_a4[0] = local_1fc + 2;\n    *(undefined ****)(puVar17 + -0x10) = local_1e8;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b9b;\n    FUN_0022c040();\n    puVar18 = puVar17;\n  }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0x3288) != 0)" (( "(") (binary_expression "*(int *)(param_1 + 0x3288) != 0" (pointer_expression "*(int *)(param_1 + 0x3288)" (* "*") (cast_expression "(int *)(param_1 + 0x3288)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x3288)" (( "(") (binary_expression "param_1 + 0x3288" (identifier "param_1") (+ "+") (number_literal "0x3288")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    local_1e8 = local_a4;\n    local_1d0 = (undefined ***)&local_134;\n    FUN_0022bca0(local_1e8);\n    local_1fc = ppuVar4 + -0xa14;\n    local_34 = 0;\n    local_2c = 0;\n    local_a4[0] = ppuVar4 + -0xa12;\n    local_30 = 0;\n    local_28 = 0;\n    local_1f4 = (undefined ***)ppuVar4[-0x9d9];\n    local_1f8 = ppuVar4[-0x9d8];\n    local_24 = 0;\n    local_20 = 0;\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n                    \n    FUN_00211450((int)local_1f4[-3] + (int)&local_134,0);\n    local_200 = ppuVar4 + -0x9d6;\n    local_134 = (undefined ***)(ppuVar4 + -0x9d3);\n    local_a4[0] = ppuVar4 + -0x9ce;\n    local_1dc = local_12c;\n                    \n    FUN_00213670(local_12c);\n                    \n    FUN_00211450(local_1e8,local_12c);\n                    \n    iVar14 = FUN_00217950(local_12c,*(undefined4 *)(param_1 + 0x3288),8);\n    puVar15 = (undefined *)((int)local_1d0 + (int)local_134[-3]);\n    if (iVar14 == 0) {\n                    \n      FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4);\n    }\n    else {\n      FUN_00210c00(puVar15,0);\n    }\n    ppuVar4 = local_1c4;\n    if ((local_90 & 5) != 0) {\n      piVar7 = __errno_location();\n      pcVar12 = strerror(*piVar7);\n      uVar11 = *(undefined4 *)(param_1 + 0x3288);\n      uVar13 = gettext(local_1c4 + -0x3f6cb);\n                    \n                    \n      FUN_00065450(uVar13,uVar11,pcVar12);\n    }\n    local_1e0 = local_148;\n    local_148[0] = 0;\n    local_14c = 0;\n    piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n    local_150 = local_1e0;\n    if (piVar7 == (int *)0x0) {\n                    \n                    \n      FUN_0022c630();\n    }\n    if ((char)piVar7[7] == '\0') {\n                    \n      FUN_0022ccc0(piVar7);\n      iVar14 = 10;\n      if (*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0) {\n        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);\n        iVar14 = (int)cVar5;\n      }\n    }\n    else {\n      iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n    }\n    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);\n                    \n    FUN_001e7cb0(local_1d0,&local_150,iVar14);\n    local_1d4 = (undefined1 **)(param_1 + 0x5a3c);\n    local_1e4 = local_1c0;\n    while ((local_90 & 5) == 0) {\n      if ((local_14c != 0) && (local_150[local_14c + -1] == '\r')) {\n        *(undefined4 *)(puVar17 + -8) = 0;\n        *(int *)(puVar17 + -0xc) = local_14c + -1;\n        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;\n        FUN_001ef780();\n      }\n      *(undefined4 *)(puVar17 + -8) = 0xc70f6907;\n      *(int *)(puVar17 + -0xc) = local_14c;\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe793a;\n      uVar6 = FUN_001e52b0();\n      local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40);\n      *(uint *)(puVar17 + -0x14) = uVar6;\n      *(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_;\n      *(uint *)(puVar17 + -0x1c) = local_1d8;\n      *(undefined1 ***)(puVar17 + -0x20) = local_1d4;\n      *(undefined4 *)(puVar17 + -0x24) = 0xe7960;\n      piVar7 = (int *)FUN_000eadf0();\n      if ((piVar7 == (int *)0x0) || (*piVar7 == 0)) {\n        *(undefined4 *)(puVar17 + -0x10) = 0x20;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;\n        puVar8 = (undefined4 *)FUN_001e5200();\n        *puVar8 = 0;\n        puVar8[1] = puVar8 + 3;\n        *(undefined4 *)(puVar17 + -4) = 0;\n        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;\n        *(undefined1 **)(puVar17 + -0xc) = local_150;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;\n        FUN_000513a0();\n        *(undefined4 *)(puVar17 + -0xc) = 1;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8;\n        *(uint *)(puVar17 + -0x14) = uVar6;\n        *(uint *)(puVar17 + -0x18) = local_1d8;\n        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;\n        *(undefined1 **)(puVar17 + -0x20) = local_1e4;\n                    \n        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;\n        FUN_000ec3b0();\n        puVar17 = puVar17 + -4;\n      }\n      ppuVar4 = local_1c4;\n      piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n      if (piVar7 == (int *)0x0) {\n                    \n                    \n        *(undefined4 *)(puVar17 + -4) = 0xe88af;\n        FUN_0022c630();\n      }\n      if ((char)piVar7[7] == '\0') {\n        *(int **)(puVar17 + -0x10) = piVar7;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;\n        FUN_0022ccc0();\n        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);\n        iVar14 = 10;\n        if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }\n      }\n      else {\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }\n      *(int *)(puVar17 + -8) = iVar14;\n      *(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_;\n      *(undefined ****)(puVar17 + -0x10) = local_1d0;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe78f7;\n      FUN_001e7cb0();\n    }\n    if (local_150 != local_1e0) {\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe7aef;\n      FUN_001e6db0();\n    }\n    ppuVar4 = local_1c4;\n    *(undefined ****)(puVar17 + -0x10) = local_1dc;\n    local_134 = (undefined ***)(local_200 + 3);\n    local_a4[0] = local_200 + 8;\n    local_12c[0] = local_1c4 + -0x9f2;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b2f;\n    FUN_00216e90();\n    *(undefined1 **)(puVar17 + -0x10) = local_f4;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b3d;\n    FUN_001e75f0();\n    local_12c[0] = ppuVar4 + -0xbd7;\n    *(undefined1 **)(puVar17 + -0x10) = local_110;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b5a;\n    FUN_001e9510();\n    local_134 = local_1f4;\n    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;\n    local_130 = 0;\n    local_a4[0] = local_1fc + 2;\n    *(undefined ****)(puVar17 + -0x10) = local_1e8;\n    *(undefined4 *)(puVar17 + -0x14) = 0xe7b9b;\n    FUN_0022c040();\n    puVar18 = puVar17;\n  }" ({ "{") (expression_statement "local_1e8 = local_a4;" (assignment_expression "local_1e8 = local_a4" (identifier "local_1e8") (= "=") (identifier "local_a4")) (; ";")) (expression_statement "local_1d0 = (undefined ***)&local_134;" (assignment_expression "local_1d0 = (undefined ***)&local_134" (identifier "local_1d0") (= "=") (cast_expression "(undefined ***)&local_134" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (pointer_expression "&local_134" (& "&") (identifier "local_134")))) (; ";")) (expression_statement "FUN_0022bca0(local_1e8);" (call_expression "FUN_0022bca0(local_1e8)" (identifier "FUN_0022bca0") (argument_list "(local_1e8)" (( "(") (identifier "local_1e8") () ")"))) (; ";")) (expression_statement "local_1fc = ppuVar4 + -0xa14;" (assignment_expression "local_1fc = ppuVar4 + -0xa14" (identifier "local_1fc") (= "=") (binary_expression "ppuVar4 + -0xa14" (identifier "ppuVar4") (+ "+") (number_literal "-0xa14"))) (; ";")) (expression_statement "local_34 = 0;" (assignment_expression "local_34 = 0" (identifier "local_34") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_2c = 0;" (assignment_expression "local_2c = 0" (identifier "local_2c") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_a4[0] = ppuVar4 + -0xa12;" (assignment_expression "local_a4[0] = ppuVar4 + -0xa12" (subscript_expression "local_a4[0]" (identifier "local_a4") ([ "[") (number_literal "0") (] "]")) (= "=") (binary_expression "ppuVar4 + -0xa12" (identifier "ppuVar4") (+ "+") (number_literal "-0xa12"))) (; ";")) (expression_statement "local_30 = 0;" (assignment_expression "local_30 = 0" (identifier "local_30") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_28 = 0;" (assignment_expression "local_28 = 0" (identifier "local_28") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_1f4 = (undefined ***)ppuVar4[-0x9d9];" (assignment_expression "local_1f4 = (undefined ***)ppuVar4[-0x9d9]" (identifier "local_1f4") (= "=") (cast_expression "(undefined ***)ppuVar4[-0x9d9]" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (subscript_expression "ppuVar4[-0x9d9]" (identifier "ppuVar4") ([ "[") (number_literal "-0x9d9") (] "]")))) (; ";")) (expression_statement "local_1f8 = ppuVar4[-0x9d8];" (assignment_expression "local_1f8 = ppuVar4[-0x9d8]" (identifier "local_1f8") (= "=") (subscript_expression "ppuVar4[-0x9d8]" (identifier "ppuVar4") ([ "[") (number_literal "-0x9d8") (] "]"))) (; ";")) (expression_statement "local_24 = 0;" (assignment_expression "local_24 = 0" (identifier "local_24") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_20 = 0;" (assignment_expression "local_20 = 0" (identifier "local_20") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_134 = local_1f4;" (assignment_expression "local_134 = local_1f4" (identifier "local_134") (= "=") (identifier "local_1f4")) (; ";")) (expression_statement "*(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;" (assignment_expression "*(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8" (pointer_expression "*(undefined **)((int)&local_134 + (int)local_1f4[-3])" (* "*") (cast_expression "(undefined **)((int)&local_134 + (int)local_1f4[-3])" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)&local_134 + (int)local_1f4[-3])" (( "(") (binary_expression "(int)&local_134 + (int)local_1f4[-3]" (cast_expression "(int)&local_134" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "&local_134" (& "&") (identifier "local_134"))) (+ "+") (cast_expression "(int)local_1f4[-3]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "local_1f4[-3]" (identifier "local_1f4") ([ "[") (number_literal "-3") (] "]")))) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "local_130 = 0;" (assignment_expression "local_130 = 0" (identifier "local_130") (= "=") (number_literal "0")) (; ";")) (expression_statement "FUN_00211450((int)local_1f4[-3] + (int)&local_134,0);" (call_expression "FUN_00211450((int)local_1f4[-3] + (int)&local_134,0)" (identifier "FUN_00211450") (argument_list "((int)local_1f4[-3] + (int)&local_134,0)" (( "(") (binary_expression "(int)local_1f4[-3] + (int)&local_134" (cast_expression "(int)local_1f4[-3]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "local_1f4[-3]" (identifier "local_1f4") ([ "[") (number_literal "-3") (] "]"))) (+ "+") (cast_expression "(int)&local_134" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "&local_134" (& "&") (identifier "local_134")))) (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "local_200 = ppuVar4 + -0x9d6;" (assignment_expression "local_200 = ppuVar4 + -0x9d6" (identifier "local_200") (= "=") (binary_expression "ppuVar4 + -0x9d6" (identifier "ppuVar4") (+ "+") (number_literal "-0x9d6"))) (; ";")) (expression_statement "local_134 = (undefined ***)(ppuVar4 + -0x9d3);" (assignment_expression "local_134 = (undefined ***)(ppuVar4 + -0x9d3)" (identifier "local_134") (= "=") (cast_expression "(undefined ***)(ppuVar4 + -0x9d3)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(ppuVar4 + -0x9d3)" (( "(") (binary_expression "ppuVar4 + -0x9d3" (identifier "ppuVar4") (+ "+") (number_literal "-0x9d3")) () ")")))) (; ";")) (expression_statement "local_a4[0] = ppuVar4 + -0x9ce;" (assignment_expression "local_a4[0] = ppuVar4 + -0x9ce" (subscript_expression "local_a4[0]" (identifier "local_a4") ([ "[") (number_literal "0") (] "]")) (= "=") (binary_expression "ppuVar4 + -0x9ce" (identifier "ppuVar4") (+ "+") (number_literal "-0x9ce"))) (; ";")) (expression_statement "local_1dc = local_12c;" (assignment_expression "local_1dc = local_12c" (identifier "local_1dc") (= "=") (identifier "local_12c")) (; ";")) (expression_statement "FUN_00213670(local_12c);" (call_expression "FUN_00213670(local_12c)" (identifier "FUN_00213670") (argument_list "(local_12c)" (( "(") (identifier "local_12c") () ")"))) (; ";")) (expression_statement "FUN_00211450(local_1e8,local_12c);" (call_expression "FUN_00211450(local_1e8,local_12c)" (identifier "FUN_00211450") (argument_list "(local_1e8,local_12c)" (( "(") (identifier "local_1e8") (, ",") (identifier "local_12c") () ")"))) (; ";")) (expression_statement "iVar14 = FUN_00217950(local_12c,*(undefined4 *)(param_1 + 0x3288),8);" (assignment_expression "iVar14 = FUN_00217950(local_12c,*(undefined4 *)(param_1 + 0x3288),8)" (identifier "iVar14") (= "=") (call_expression "FUN_00217950(local_12c,*(undefined4 *)(param_1 + 0x3288),8)" (identifier "FUN_00217950") (argument_list "(local_12c,*(undefined4 *)(param_1 + 0x3288),8)" (( "(") (identifier "local_12c") (, ",") (pointer_expression "*(undefined4 *)(param_1 + 0x3288)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x3288)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x3288)" (( "(") (binary_expression "param_1 + 0x3288" (identifier "param_1") (+ "+") (number_literal "0x3288")) () ")")))) (, ",") (number_literal "8") () ")")))) (; ";")) (expression_statement "puVar15 = (undefined *)((int)local_1d0 + (int)local_134[-3]);" (assignment_expression "puVar15 = (undefined *)((int)local_1d0 + (int)local_134[-3])" (identifier "puVar15") (= "=") (cast_expression "(undefined *)((int)local_1d0 + (int)local_134[-3])" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_1d0 + (int)local_134[-3])" (( "(") (binary_expression "(int)local_1d0 + (int)local_134[-3]" (cast_expression "(int)local_1d0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1d0")) (+ "+") (cast_expression "(int)local_134[-3]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "local_134[-3]" (identifier "local_134") ([ "[") (number_literal "-3") (] "]")))) () ")")))) (; ";")) (if_statement "if (iVar14 == 0) {\n                    \n      FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4);\n    }\n    else {\n      FUN_00210c00(puVar15,0);\n    }" (if "if") (parenthesized_expression "(iVar14 == 0)" (( "(") (binary_expression "iVar14 == 0" (identifier "iVar14") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n      FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4);\n    }" ({ "{") (expression_statement "FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4);" (call_expression "FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4)" (identifier "FUN_00210c00") (argument_list "(puVar15,*(uint *)(puVar15 + 0x14) | 4)" (( "(") (identifier "puVar15") (, ",") (binary_expression "*(uint *)(puVar15 + 0x14) | 4" (pointer_expression "*(uint *)(puVar15 + 0x14)" (* "*") (cast_expression "(uint *)(puVar15 + 0x14)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar15 + 0x14)" (( "(") (binary_expression "puVar15 + 0x14" (identifier "puVar15") (+ "+") (number_literal "0x14")) () ")")))) (| "|") (number_literal "4")) () ")"))) (; ";")) (} "}")) (else_clause "else {\n      FUN_00210c00(puVar15,0);\n    }" (else "else") (compound_statement "{\n      FUN_00210c00(puVar15,0);\n    }" ({ "{") (expression_statement "FUN_00210c00(puVar15,0);" (call_expression "FUN_00210c00(puVar15,0)" (identifier "FUN_00210c00") (argument_list "(puVar15,0)" (( "(") (identifier "puVar15") (, ",") (number_literal "0") () ")"))) (; ";")) (} "}")))) (expression_statement "ppuVar4 = local_1c4;" (assignment_expression "ppuVar4 = local_1c4" (identifier "ppuVar4") (= "=") (identifier "local_1c4")) (; ";")) (if_statement "if ((local_90 & 5) != 0) {\n      piVar7 = __errno_location();\n      pcVar12 = strerror(*piVar7);\n      uVar11 = *(undefined4 *)(param_1 + 0x3288);\n      uVar13 = gettext(local_1c4 + -0x3f6cb);\n                    \n                    \n      FUN_00065450(uVar13,uVar11,pcVar12);\n    }" (if "if") (parenthesized_expression "((local_90 & 5) != 0)" (( "(") (binary_expression "(local_90 & 5) != 0" (parenthesized_expression "(local_90 & 5)" (( "(") (binary_expression "local_90 & 5" (identifier "local_90") (& "&") (number_literal "5")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      piVar7 = __errno_location();\n      pcVar12 = strerror(*piVar7);\n      uVar11 = *(undefined4 *)(param_1 + 0x3288);\n      uVar13 = gettext(local_1c4 + -0x3f6cb);\n                    \n                    \n      FUN_00065450(uVar13,uVar11,pcVar12);\n    }" ({ "{") (expression_statement "piVar7 = __errno_location();" (assignment_expression "piVar7 = __errno_location()" (identifier "piVar7") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "pcVar12 = strerror(*piVar7);" (assignment_expression "pcVar12 = strerror(*piVar7)" (identifier "pcVar12") (= "=") (call_expression "strerror(*piVar7)" (identifier "strerror") (argument_list "(*piVar7)" (( "(") (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) () ")")))) (; ";")) (expression_statement "uVar11 = *(undefined4 *)(param_1 + 0x3288);" (assignment_expression "uVar11 = *(undefined4 *)(param_1 + 0x3288)" (identifier "uVar11") (= "=") (pointer_expression "*(undefined4 *)(param_1 + 0x3288)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x3288)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x3288)" (( "(") (binary_expression "param_1 + 0x3288" (identifier "param_1") (+ "+") (number_literal "0x3288")) () ")"))))) (; ";")) (expression_statement "uVar13 = gettext(local_1c4 + -0x3f6cb);" (assignment_expression "uVar13 = gettext(local_1c4 + -0x3f6cb)" (identifier "uVar13") (= "=") (call_expression "gettext(local_1c4 + -0x3f6cb)" (identifier "gettext") (argument_list "(local_1c4 + -0x3f6cb)" (( "(") (binary_expression "local_1c4 + -0x3f6cb" (identifier "local_1c4") (+ "+") (number_literal "-0x3f6cb")) () ")")))) (; ";")) (expression_statement "FUN_00065450(uVar13,uVar11,pcVar12);" (call_expression "FUN_00065450(uVar13,uVar11,pcVar12)" (identifier "FUN_00065450") (argument_list "(uVar13,uVar11,pcVar12)" (( "(") (identifier "uVar13") (, ",") (identifier "uVar11") (, ",") (identifier "pcVar12") () ")"))) (; ";")) (} "}"))) (expression_statement "local_1e0 = local_148;" (assignment_expression "local_1e0 = local_148" (identifier "local_1e0") (= "=") (identifier "local_148")) (; ";")) (expression_statement "local_148[0] = 0;" (assignment_expression "local_148[0] = 0" (subscript_expression "local_148[0]" (identifier "local_148") ([ "[") (number_literal "0") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "local_14c = 0;" (assignment_expression "local_14c = 0" (identifier "local_14c") (= "=") (number_literal "0")) (; ";")) (expression_statement "piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);" (assignment_expression "piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3])" (identifier "piVar7") (= "=") (pointer_expression "*(int **)((int)aiStack_b8 + (int)local_134[-3])" (* "*") (cast_expression "(int **)((int)aiStack_b8 + (int)local_134[-3])" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)aiStack_b8 + (int)local_134[-3])" (( "(") (binary_expression "(int)aiStack_b8 + (int)local_134[-3]" (cast_expression "(int)aiStack_b8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "aiStack_b8")) (+ "+") (cast_expression "(int)local_134[-3]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "local_134[-3]" (identifier "local_134") ([ "[") (number_literal "-3") (] "]")))) () ")"))))) (; ";")) (expression_statement "local_150 = local_1e0;" (assignment_expression "local_150 = local_1e0" (identifier "local_150") (= "=") (identifier "local_1e0")) (; ";")) (if_statement "if (piVar7 == (int *)0x0) {\n                    \n                    \n      FUN_0022c630();\n    }" (if "if") (parenthesized_expression "(piVar7 == (int *)0x0)" (( "(") (binary_expression "piVar7 == (int *)0x0" (identifier "piVar7") (== "==") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                    \n                    \n      FUN_0022c630();\n    }" ({ "{") (expression_statement "FUN_0022c630();" (call_expression "FUN_0022c630()" (identifier "FUN_0022c630") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if ((char)piVar7[7] == '\0') {\n                    \n      FUN_0022ccc0(piVar7);\n      iVar14 = 10;\n      if (*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0) {\n        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);\n        iVar14 = (int)cVar5;\n      }\n    }\n    else {\n      iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n    }" (if "if") (parenthesized_expression "((char)piVar7[7] == '\0')" (( "(") (binary_expression "(char)piVar7[7] == '\0'" (cast_expression "(char)piVar7[7]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "piVar7[7]" (identifier "piVar7") ([ "[") (number_literal "7") (] "]"))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                    \n      FUN_0022ccc0(piVar7);\n      iVar14 = 10;\n      if (*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0) {\n        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);\n        iVar14 = (int)cVar5;\n      }\n    }" ({ "{") (expression_statement "FUN_0022ccc0(piVar7);" (call_expression "FUN_0022ccc0(piVar7)" (identifier "FUN_0022ccc0") (argument_list "(piVar7)" (( "(") (identifier "piVar7") () ")"))) (; ";")) (expression_statement "iVar14 = 10;" (assignment_expression "iVar14 = 10" (identifier "iVar14") (= "=") (number_literal "10")) (; ";")) (if_statement "if (*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0) {\n        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);\n        iVar14 = (int)cVar5;\n      }" (if "if") (parenthesized_expression "(*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0)" (( "(") (binary_expression "*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0" (pointer_expression "*(undefined ***)(*piVar7 + 0x18)" (* "*") (cast_expression "(undefined ***)(*piVar7 + 0x18)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(*piVar7 + 0x18)" (( "(") (binary_expression "*piVar7 + 0x18" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (+ "+") (number_literal "0x18")) () ")")))) (!= "!=") (binary_expression "ppuVar4 + -0xba9e0" (identifier "ppuVar4") (+ "+") (number_literal "-0xba9e0"))) () ")")) (compound_statement "{\n        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);\n        iVar14 = (int)cVar5;\n      }" ({ "{") (expression_statement "cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);" (assignment_expression "cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10)" (identifier "cVar5") (= "=") (call_expression "(*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10)" (parenthesized_expression "(*(code *)*(undefined ***)(*piVar7 + 0x18))" (( "(") (pointer_expression "*(code *)*(undefined ***)(*piVar7 + 0x18)" (* "*") (cast_expression "(code *)*(undefined ***)(*piVar7 + 0x18)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*(undefined ***)(*piVar7 + 0x18)" (* "*") (cast_expression "(undefined ***)(*piVar7 + 0x18)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(*piVar7 + 0x18)" (( "(") (binary_expression "*piVar7 + 0x18" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (+ "+") (number_literal "0x18")) () ")")))))) () ")")) (argument_list "(piVar7,10)" (( "(") (identifier "piVar7") (, ",") (number_literal "10") () ")")))) (; ";")) (expression_statement "iVar14 = (int)cVar5;" (assignment_expression "iVar14 = (int)cVar5" (identifier "iVar14") (= "=") (cast_expression "(int)cVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "cVar5"))) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n      iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n    }" (else "else") (compound_statement "{\n      iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n    }" ({ "{") (expression_statement "iVar14 = (int)*(char *)((int)piVar7 + 0x27);" (assignment_expression "iVar14 = (int)*(char *)((int)piVar7 + 0x27)" (identifier "iVar14") (= "=") (cast_expression "(int)*(char *)((int)piVar7 + 0x27)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "*(char *)((int)piVar7 + 0x27)" (* "*") (cast_expression "(char *)((int)piVar7 + 0x27)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar7 + 0x27)" (( "(") (binary_expression "(int)piVar7 + 0x27" (cast_expression "(int)piVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar7")) (+ "+") (number_literal "0x27")) () ")")))))) (; ";")) (} "}")))) (expression_statement "local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);" (assignment_expression "local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150)" (identifier "local_1cc") (= "=") (cast_expression "(double)CONCAT44(local_1cc._4_4_,&local_150)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT44(local_1cc._4_4_,&local_150)" (identifier "CONCAT44") (argument_list "(local_1cc._4_4_,&local_150)" (( "(") (field_expression "local_1cc._4_4_" (identifier "local_1cc") (. ".") (field_identifier "_4_4_")) (, ",") (pointer_expression "&local_150" (& "&") (identifier "local_150")) () ")"))))) (; ";")) (expression_statement "FUN_001e7cb0(local_1d0,&local_150,iVar14);" (call_expression "FUN_001e7cb0(local_1d0,&local_150,iVar14)" (identifier "FUN_001e7cb0") (argument_list "(local_1d0,&local_150,iVar14)" (( "(") (identifier "local_1d0") (, ",") (pointer_expression "&local_150" (& "&") (identifier "local_150")) (, ",") (identifier "iVar14") () ")"))) (; ";")) (expression_statement "local_1d4 = (undefined1 **)(param_1 + 0x5a3c);" (assignment_expression "local_1d4 = (undefined1 **)(param_1 + 0x5a3c)" (identifier "local_1d4") (= "=") (cast_expression "(undefined1 **)(param_1 + 0x5a3c)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x5a3c)" (( "(") (binary_expression "param_1 + 0x5a3c" (identifier "param_1") (+ "+") (number_literal "0x5a3c")) () ")")))) (; ";")) (expression_statement "local_1e4 = local_1c0;" (assignment_expression "local_1e4 = local_1c0" (identifier "local_1e4") (= "=") (identifier "local_1c0")) (; ";")) (while_statement "while ((local_90 & 5) == 0) {\n      if ((local_14c != 0) && (local_150[local_14c + -1] == '\r')) {\n        *(undefined4 *)(puVar17 + -8) = 0;\n        *(int *)(puVar17 + -0xc) = local_14c + -1;\n        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;\n        FUN_001ef780();\n      }\n      *(undefined4 *)(puVar17 + -8) = 0xc70f6907;\n      *(int *)(puVar17 + -0xc) = local_14c;\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe793a;\n      uVar6 = FUN_001e52b0();\n      local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40);\n      *(uint *)(puVar17 + -0x14) = uVar6;\n      *(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_;\n      *(uint *)(puVar17 + -0x1c) = local_1d8;\n      *(undefined1 ***)(puVar17 + -0x20) = local_1d4;\n      *(undefined4 *)(puVar17 + -0x24) = 0xe7960;\n      piVar7 = (int *)FUN_000eadf0();\n      if ((piVar7 == (int *)0x0) || (*piVar7 == 0)) {\n        *(undefined4 *)(puVar17 + -0x10) = 0x20;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;\n        puVar8 = (undefined4 *)FUN_001e5200();\n        *puVar8 = 0;\n        puVar8[1] = puVar8 + 3;\n        *(undefined4 *)(puVar17 + -4) = 0;\n        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;\n        *(undefined1 **)(puVar17 + -0xc) = local_150;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;\n        FUN_000513a0();\n        *(undefined4 *)(puVar17 + -0xc) = 1;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8;\n        *(uint *)(puVar17 + -0x14) = uVar6;\n        *(uint *)(puVar17 + -0x18) = local_1d8;\n        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;\n        *(undefined1 **)(puVar17 + -0x20) = local_1e4;\n                    \n        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;\n        FUN_000ec3b0();\n        puVar17 = puVar17 + -4;\n      }\n      ppuVar4 = local_1c4;\n      piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n      if (piVar7 == (int *)0x0) {\n                    \n                    \n        *(undefined4 *)(puVar17 + -4) = 0xe88af;\n        FUN_0022c630();\n      }\n      if ((char)piVar7[7] == '\0') {\n        *(int **)(puVar17 + -0x10) = piVar7;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;\n        FUN_0022ccc0();\n        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);\n        iVar14 = 10;\n        if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }\n      }\n      else {\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }\n      *(int *)(puVar17 + -8) = iVar14;\n      *(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_;\n      *(undefined ****)(puVar17 + -0x10) = local_1d0;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe78f7;\n      FUN_001e7cb0();\n    }" (while "while") (parenthesized_expression "((local_90 & 5) == 0)" (( "(") (binary_expression "(local_90 & 5) == 0" (parenthesized_expression "(local_90 & 5)" (( "(") (binary_expression "local_90 & 5" (identifier "local_90") (& "&") (number_literal "5")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      if ((local_14c != 0) && (local_150[local_14c + -1] == '\r')) {\n        *(undefined4 *)(puVar17 + -8) = 0;\n        *(int *)(puVar17 + -0xc) = local_14c + -1;\n        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;\n        FUN_001ef780();\n      }\n      *(undefined4 *)(puVar17 + -8) = 0xc70f6907;\n      *(int *)(puVar17 + -0xc) = local_14c;\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe793a;\n      uVar6 = FUN_001e52b0();\n      local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40);\n      *(uint *)(puVar17 + -0x14) = uVar6;\n      *(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_;\n      *(uint *)(puVar17 + -0x1c) = local_1d8;\n      *(undefined1 ***)(puVar17 + -0x20) = local_1d4;\n      *(undefined4 *)(puVar17 + -0x24) = 0xe7960;\n      piVar7 = (int *)FUN_000eadf0();\n      if ((piVar7 == (int *)0x0) || (*piVar7 == 0)) {\n        *(undefined4 *)(puVar17 + -0x10) = 0x20;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;\n        puVar8 = (undefined4 *)FUN_001e5200();\n        *puVar8 = 0;\n        puVar8[1] = puVar8 + 3;\n        *(undefined4 *)(puVar17 + -4) = 0;\n        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;\n        *(undefined1 **)(puVar17 + -0xc) = local_150;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;\n        FUN_000513a0();\n        *(undefined4 *)(puVar17 + -0xc) = 1;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8;\n        *(uint *)(puVar17 + -0x14) = uVar6;\n        *(uint *)(puVar17 + -0x18) = local_1d8;\n        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;\n        *(undefined1 **)(puVar17 + -0x20) = local_1e4;\n                    \n        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;\n        FUN_000ec3b0();\n        puVar17 = puVar17 + -4;\n      }\n      ppuVar4 = local_1c4;\n      piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);\n      if (piVar7 == (int *)0x0) {\n                    \n                    \n        *(undefined4 *)(puVar17 + -4) = 0xe88af;\n        FUN_0022c630();\n      }\n      if ((char)piVar7[7] == '\0') {\n        *(int **)(puVar17 + -0x10) = piVar7;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;\n        FUN_0022ccc0();\n        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);\n        iVar14 = 10;\n        if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }\n      }\n      else {\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }\n      *(int *)(puVar17 + -8) = iVar14;\n      *(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_;\n      *(undefined ****)(puVar17 + -0x10) = local_1d0;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe78f7;\n      FUN_001e7cb0();\n    }" ({ "{") (if_statement "if ((local_14c != 0) && (local_150[local_14c + -1] == '\r')) {\n        *(undefined4 *)(puVar17 + -8) = 0;\n        *(int *)(puVar17 + -0xc) = local_14c + -1;\n        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;\n        FUN_001ef780();\n      }" (if "if") (parenthesized_expression "((local_14c != 0) && (local_150[local_14c + -1] == '\r'))" (( "(") (binary_expression "(local_14c != 0) && (local_150[local_14c + -1] == '\r')" (parenthesized_expression "(local_14c != 0)" (( "(") (binary_expression "local_14c != 0" (identifier "local_14c") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(local_150[local_14c + -1] == '\r')" (( "(") (binary_expression "local_150[local_14c + -1] == '\r'" (subscript_expression "local_150[local_14c + -1]" (identifier "local_150") ([ "[") (binary_expression "local_14c + -1" (identifier "local_14c") (+ "+") (number_literal "-1")) (] "]")) (== "==") (char_literal "'\r'" (' "'") (escape_sequence "\r") (' "'"))) () ")"))) () ")")) (compound_statement "{\n        *(undefined4 *)(puVar17 + -8) = 0;\n        *(int *)(puVar17 + -0xc) = local_14c + -1;\n        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;\n        FUN_001ef780();\n      }" ({ "{") (expression_statement "*(undefined4 *)(puVar17 + -8) = 0;" (assignment_expression "*(undefined4 *)(puVar17 + -8) = 0" (pointer_expression "*(undefined4 *)(puVar17 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -8)" (( "(") (binary_expression "puVar17 + -8" (identifier "puVar17") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(int *)(puVar17 + -0xc) = local_14c + -1;" (assignment_expression "*(int *)(puVar17 + -0xc) = local_14c + -1" (pointer_expression "*(int *)(puVar17 + -0xc)" (* "*") (cast_expression "(int *)(puVar17 + -0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc)" (( "(") (binary_expression "puVar17 + -0xc" (identifier "puVar17") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (binary_expression "local_14c + -1" (identifier "local_14c") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;" (assignment_expression "*(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_" (pointer_expression "*(undefined4 *)(puVar17 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x10)" (( "(") (binary_expression "puVar17 + -0x10" (identifier "puVar17") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (field_expression "local_1cc._0_4_" (identifier "local_1cc") (. ".") (field_identifier "_0_4_"))) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe7e37;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe7e37" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x14)" (( "(") (binary_expression "puVar17 + -0x14" (identifier "puVar17") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe7e37")) (; ";")) (expression_statement "FUN_001ef780();" (call_expression "FUN_001ef780()" (identifier "FUN_001ef780") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "*(undefined4 *)(puVar17 + -8) = 0xc70f6907;" (assignment_expression "*(undefined4 *)(puVar17 + -8) = 0xc70f6907" (pointer_expression "*(undefined4 *)(puVar17 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -8)" (( "(") (binary_expression "puVar17 + -8" (identifier "puVar17") (+ "+") (number_literal "-8")) () ")")))) (= "=") (number_literal "0xc70f6907")) (; ";")) (expression_statement "*(int *)(puVar17 + -0xc) = local_14c;" (assignment_expression "*(int *)(puVar17 + -0xc) = local_14c" (pointer_expression "*(int *)(puVar17 + -0xc)" (* "*") (cast_expression "(int *)(puVar17 + -0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc)" (( "(") (binary_expression "puVar17 + -0xc" (identifier "puVar17") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_14c")) (; ";")) (expression_statement "*(undefined1 **)(puVar17 + -0x10) = local_150;" (assignment_expression "*(undefined1 **)(puVar17 + -0x10) = local_150" (pointer_expression "*(undefined1 **)(puVar17 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0x10)" (( "(") (binary_expression "puVar17 + -0x10" (identifier "puVar17") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_150")) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe793a;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe793a" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x14)" (( "(") (binary_expression "puVar17 + -0x14" (identifier "puVar17") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe793a")) (; ";")) (expression_statement "uVar6 = FUN_001e52b0();" (assignment_expression "uVar6 = FUN_001e52b0()" (identifier "uVar6") (= "=") (call_expression "FUN_001e52b0()" (identifier "FUN_001e52b0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40);" (assignment_expression "local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40)" (identifier "local_1d8") (= "=") (binary_expression "uVar6 % *(uint *)(param_1 + 0x5a40)" (identifier "uVar6") (% "%") (pointer_expression "*(uint *)(param_1 + 0x5a40)" (* "*") (cast_expression "(uint *)(param_1 + 0x5a40)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x5a40)" (( "(") (binary_expression "param_1 + 0x5a40" (identifier "param_1") (+ "+") (number_literal "0x5a40")) () ")")))))) (; ";")) (expression_statement "*(uint *)(puVar17 + -0x14) = uVar6;" (assignment_expression "*(uint *)(puVar17 + -0x14) = uVar6" (pointer_expression "*(uint *)(puVar17 + -0x14)" (* "*") (cast_expression "(uint *)(puVar17 + -0x14)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x14)" (( "(") (binary_expression "puVar17 + -0x14" (identifier "puVar17") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar6")) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_;" (assignment_expression "*(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_" (pointer_expression "*(undefined4 *)(puVar17 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x18)" (( "(") (binary_expression "puVar17 + -0x18" (identifier "puVar17") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (field_expression "local_1cc._0_4_" (identifier "local_1cc") (. ".") (field_identifier "_0_4_"))) (; ";")) (expression_statement "*(uint *)(puVar17 + -0x1c) = local_1d8;" (assignment_expression "*(uint *)(puVar17 + -0x1c) = local_1d8" (pointer_expression "*(uint *)(puVar17 + -0x1c)" (* "*") (cast_expression "(uint *)(puVar17 + -0x1c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x1c)" (( "(") (binary_expression "puVar17 + -0x1c" (identifier "puVar17") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "local_1d8")) (; ";")) (expression_statement "*(undefined1 ***)(puVar17 + -0x20) = local_1d4;" (assignment_expression "*(undefined1 ***)(puVar17 + -0x20) = local_1d4" (pointer_expression "*(undefined1 ***)(puVar17 + -0x20)" (* "*") (cast_expression "(undefined1 ***)(puVar17 + -0x20)" (( "(") (type_descriptor "undefined1 ***" (type_identifier "undefined1") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar17 + -0x20)" (( "(") (binary_expression "puVar17 + -0x20" (identifier "puVar17") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "local_1d4")) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0x24) = 0xe7960;" (assignment_expression "*(undefined4 *)(puVar17 + -0x24) = 0xe7960" (pointer_expression "*(undefined4 *)(puVar17 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x24)" (( "(") (binary_expression "puVar17 + -0x24" (identifier "puVar17") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0xe7960")) (; ";")) (expression_statement "piVar7 = (int *)FUN_000eadf0();" (assignment_expression "piVar7 = (int *)FUN_000eadf0()" (identifier "piVar7") (= "=") (cast_expression "(int *)FUN_000eadf0()" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_000eadf0()" (identifier "FUN_000eadf0") (argument_list "()" (( "(") () ")"))))) (; ";")) (if_statement "if ((piVar7 == (int *)0x0) || (*piVar7 == 0)) {\n        *(undefined4 *)(puVar17 + -0x10) = 0x20;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;\n        puVar8 = (undefined4 *)FUN_001e5200();\n        *puVar8 = 0;\n        puVar8[1] = puVar8 + 3;\n        *(undefined4 *)(puVar17 + -4) = 0;\n        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;\n        *(undefined1 **)(puVar17 + -0xc) = local_150;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;\n        FUN_000513a0();\n        *(undefined4 *)(puVar17 + -0xc) = 1;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8;\n        *(uint *)(puVar17 + -0x14) = uVar6;\n        *(uint *)(puVar17 + -0x18) = local_1d8;\n        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;\n        *(undefined1 **)(puVar17 + -0x20) = local_1e4;\n                    \n        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;\n        FUN_000ec3b0();\n        puVar17 = puVar17 + -4;\n      }" (if "if") (parenthesized_expression "((piVar7 == (int *)0x0) || (*piVar7 == 0))" (( "(") (binary_expression "(piVar7 == (int *)0x0) || (*piVar7 == 0)" (parenthesized_expression "(piVar7 == (int *)0x0)" (( "(") (binary_expression "piVar7 == (int *)0x0" (identifier "piVar7") (== "==") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (|| "||") (parenthesized_expression "(*piVar7 == 0)" (( "(") (binary_expression "*piVar7 == 0" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (== "==") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n        *(undefined4 *)(puVar17 + -0x10) = 0x20;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;\n        puVar8 = (undefined4 *)FUN_001e5200();\n        *puVar8 = 0;\n        puVar8[1] = puVar8 + 3;\n        *(undefined4 *)(puVar17 + -4) = 0;\n        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;\n        *(undefined1 **)(puVar17 + -0xc) = local_150;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;\n        FUN_000513a0();\n        *(undefined4 *)(puVar17 + -0xc) = 1;\n        *(undefined4 **)(puVar17 + -0x10) = puVar8;\n        *(uint *)(puVar17 + -0x14) = uVar6;\n        *(uint *)(puVar17 + -0x18) = local_1d8;\n        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;\n        *(undefined1 **)(puVar17 + -0x20) = local_1e4;\n                    \n        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;\n        FUN_000ec3b0();\n        puVar17 = puVar17 + -4;\n      }" ({ "{") (expression_statement "*(undefined4 *)(puVar17 + -0x10) = 0x20;" (assignment_expression "*(undefined4 *)(puVar17 + -0x10) = 0x20" (pointer_expression "*(undefined4 *)(puVar17 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x10)" (( "(") (binary_expression "puVar17 + -0x10" (identifier "puVar17") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0x20")) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe7a80;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe7a80" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x14)" (( "(") (binary_expression "puVar17 + -0x14" (identifier "puVar17") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe7a80")) (; ";")) (expression_statement "puVar8 = (undefined4 *)FUN_001e5200();" (assignment_expression "puVar8 = (undefined4 *)FUN_001e5200()" (identifier "puVar8") (= "=") (cast_expression "(undefined4 *)FUN_001e5200()" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_001e5200()" (identifier "FUN_001e5200") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "*puVar8 = 0;" (assignment_expression "*puVar8 = 0" (pointer_expression "*puVar8" (* "*") (identifier "puVar8")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar8[1] = puVar8 + 3;" (assignment_expression "puVar8[1] = puVar8 + 3" (subscript_expression "puVar8[1]" (identifier "puVar8") ([ "[") (number_literal "1") (] "]")) (= "=") (binary_expression "puVar8 + 3" (identifier "puVar8") (+ "+") (number_literal "3"))) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -4) = 0;" (assignment_expression "*(undefined4 *)(puVar17 + -4) = 0" (pointer_expression "*(undefined4 *)(puVar17 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -4)" (( "(") (binary_expression "puVar17 + -4" (identifier "puVar17") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined1 **)(puVar17 + -8) = local_150 + local_14c;" (assignment_expression "*(undefined1 **)(puVar17 + -8) = local_150 + local_14c" (pointer_expression "*(undefined1 **)(puVar17 + -8)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -8)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -8)" (( "(") (binary_expression "puVar17 + -8" (identifier "puVar17") (+ "+") (number_literal "-8")) () ")")))) (= "=") (binary_expression "local_150 + local_14c" (identifier "local_150") (+ "+") (identifier "local_14c"))) (; ";")) (expression_statement "*(undefined1 **)(puVar17 + -0xc) = local_150;" (assignment_expression "*(undefined1 **)(puVar17 + -0xc) = local_150" (pointer_expression "*(undefined1 **)(puVar17 + -0xc)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xc)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xc)" (( "(") (binary_expression "puVar17 + -0xc" (identifier "puVar17") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "local_150")) (; ";")) (expression_statement "*(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;" (assignment_expression "*(undefined4 **)(puVar17 + -0x10) = puVar8 + 1" (pointer_expression "*(undefined4 **)(puVar17 + -0x10)" (* "*") (cast_expression "(undefined4 **)(puVar17 + -0x10)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0x10)" (( "(") (binary_expression "puVar17 + -0x10" (identifier "puVar17") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "puVar8 + 1" (identifier "puVar8") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe7aac;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe7aac" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x14)" (( "(") (binary_expression "puVar17 + -0x14" (identifier "puVar17") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe7aac")) (; ";")) (expression_statement "FUN_000513a0();" (call_expression "FUN_000513a0()" (identifier "FUN_000513a0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0xc) = 1;" (assignment_expression "*(undefined4 *)(puVar17 + -0xc) = 1" (pointer_expression "*(undefined4 *)(puVar17 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc)" (( "(") (binary_expression "puVar17 + -0xc" (identifier "puVar17") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(undefined4 **)(puVar17 + -0x10) = puVar8;" (assignment_expression "*(undefined4 **)(puVar17 + -0x10) = puVar8" (pointer_expression "*(undefined4 **)(puVar17 + -0x10)" (* "*") (cast_expression "(undefined4 **)(puVar17 + -0x10)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0x10)" (( "(") (binary_expression "puVar17 + -0x10" (identifier "puVar17") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "puVar8")) (; ";")) (expression_statement "*(uint *)(puVar17 + -0x14) = uVar6;" (assignment_expression "*(uint *)(puVar17 + -0x14) = uVar6" (pointer_expression "*(uint *)(puVar17 + -0x14)" (* "*") (cast_expression "(uint *)(puVar17 + -0x14)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x14)" (( "(") (binary_expression "puVar17 + -0x14" (identifier "puVar17") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar6")) (; ";")) (expression_statement "*(uint *)(puVar17 + -0x18) = local_1d8;" (assignment_expression "*(uint *)(puVar17 + -0x18) = local_1d8" (pointer_expression "*(uint *)(puVar17 + -0x18)" (* "*") (cast_expression "(uint *)(puVar17 + -0x18)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x18)" (( "(") (binary_expression "puVar17 + -0x18" (identifier "puVar17") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "local_1d8")) (; ";")) (expression_statement "*(undefined1 ***)(puVar17 + -0x1c) = local_1d4;" (assignment_expression "*(undefined1 ***)(puVar17 + -0x1c) = local_1d4" (pointer_expression "*(undefined1 ***)(puVar17 + -0x1c)" (* "*") (cast_expression "(undefined1 ***)(puVar17 + -0x1c)" (( "(") (type_descriptor "undefined1 ***" (type_identifier "undefined1") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar17 + -0x1c)" (( "(") (binary_expression "puVar17 + -0x1c" (identifier "puVar17") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "local_1d4")) (; ";")) (expression_statement "*(undefined1 **)(puVar17 + -0x20) = local_1e4;" (assignment_expression "*(undefined1 **)(puVar17 + -0x20) = local_1e4" (pointer_expression "*(undefined1 **)(puVar17 + -0x20)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0x20)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0x20)" (( "(") (binary_expression "puVar17 + -0x20" (identifier "puVar17") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "local_1e4")) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;" (assignment_expression "*(undefined4 *)(puVar17 + -0x24) = 0xe7ac9" (pointer_expression "*(undefined4 *)(puVar17 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x24)" (( "(") (binary_expression "puVar17 + -0x24" (identifier "puVar17") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0xe7ac9")) (; ";")) (expression_statement "FUN_000ec3b0();" (call_expression "FUN_000ec3b0()" (identifier "FUN_000ec3b0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar17 = puVar17 + -4;" (assignment_expression "puVar17 = puVar17 + -4" (identifier "puVar17") (= "=") (binary_expression "puVar17 + -4" (identifier "puVar17") (+ "+") (number_literal "-4"))) (; ";")) (} "}"))) (expression_statement "ppuVar4 = local_1c4;" (assignment_expression "ppuVar4 = local_1c4" (identifier "ppuVar4") (= "=") (identifier "local_1c4")) (; ";")) (expression_statement "piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);" (assignment_expression "piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3])" (identifier "piVar7") (= "=") (pointer_expression "*(int **)((int)aiStack_b8 + (int)local_134[-3])" (* "*") (cast_expression "(int **)((int)aiStack_b8 + (int)local_134[-3])" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)aiStack_b8 + (int)local_134[-3])" (( "(") (binary_expression "(int)aiStack_b8 + (int)local_134[-3]" (cast_expression "(int)aiStack_b8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "aiStack_b8")) (+ "+") (cast_expression "(int)local_134[-3]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "local_134[-3]" (identifier "local_134") ([ "[") (number_literal "-3") (] "]")))) () ")"))))) (; ";")) (if_statement "if (piVar7 == (int *)0x0) {\n                    \n                    \n        *(undefined4 *)(puVar17 + -4) = 0xe88af;\n        FUN_0022c630();\n      }" (if "if") (parenthesized_expression "(piVar7 == (int *)0x0)" (( "(") (binary_expression "piVar7 == (int *)0x0" (identifier "piVar7") (== "==") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                    \n                    \n        *(undefined4 *)(puVar17 + -4) = 0xe88af;\n        FUN_0022c630();\n      }" ({ "{") (expression_statement "*(undefined4 *)(puVar17 + -4) = 0xe88af;" (assignment_expression "*(undefined4 *)(puVar17 + -4) = 0xe88af" (pointer_expression "*(undefined4 *)(puVar17 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -4)" (( "(") (binary_expression "puVar17 + -4" (identifier "puVar17") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0xe88af")) (; ";")) (expression_statement "FUN_0022c630();" (call_expression "FUN_0022c630()" (identifier "FUN_0022c630") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if ((char)piVar7[7] == '\0') {\n        *(int **)(puVar17 + -0x10) = piVar7;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;\n        FUN_0022ccc0();\n        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);\n        iVar14 = 10;\n        if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }\n      }\n      else {\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }" (if "if") (parenthesized_expression "((char)piVar7[7] == '\0')" (( "(") (binary_expression "(char)piVar7[7] == '\0'" (cast_expression "(char)piVar7[7]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "piVar7[7]" (identifier "piVar7") ([ "[") (number_literal "7") (] "]"))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        *(int **)(puVar17 + -0x10) = piVar7;\n                    \n        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;\n        FUN_0022ccc0();\n        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);\n        iVar14 = 10;\n        if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }\n      }" ({ "{") (expression_statement "*(int **)(puVar17 + -0x10) = piVar7;" (assignment_expression "*(int **)(puVar17 + -0x10) = piVar7" (pointer_expression "*(int **)(puVar17 + -0x10)" (* "*") (cast_expression "(int **)(puVar17 + -0x10)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0x10)" (( "(") (binary_expression "puVar17 + -0x10" (identifier "puVar17") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "piVar7")) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe79a8;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe79a8" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x14)" (( "(") (binary_expression "puVar17 + -0x14" (identifier "puVar17") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe79a8")) (; ";")) (expression_statement "FUN_0022ccc0();" (call_expression "FUN_0022ccc0()" (identifier "FUN_0022ccc0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "ppuVar2 = *(undefined ***)(*piVar7 + 0x18);" (assignment_expression "ppuVar2 = *(undefined ***)(*piVar7 + 0x18)" (identifier "ppuVar2") (= "=") (pointer_expression "*(undefined ***)(*piVar7 + 0x18)" (* "*") (cast_expression "(undefined ***)(*piVar7 + 0x18)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(*piVar7 + 0x18)" (( "(") (binary_expression "*piVar7 + 0x18" (pointer_expression "*piVar7" (* "*") (identifier "piVar7")) (+ "+") (number_literal "0x18")) () ")"))))) (; ";")) (expression_statement "iVar14 = 10;" (assignment_expression "iVar14 = 10" (identifier "iVar14") (= "=") (number_literal "10")) (; ";")) (if_statement "if (ppuVar2 != ppuVar4 + -0xba9e0) {\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }" (if "if") (parenthesized_expression "(ppuVar2 != ppuVar4 + -0xba9e0)" (( "(") (binary_expression "ppuVar2 != ppuVar4 + -0xba9e0" (identifier "ppuVar2") (!= "!=") (binary_expression "ppuVar4 + -0xba9e0" (identifier "ppuVar4") (+ "+") (number_literal "-0xba9e0"))) () ")")) (compound_statement "{\n          *(undefined4 *)(puVar17 + -0xc) = 10;\n          *(int **)(puVar17 + -0x10) = piVar7;\n          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;\n          cVar5 = (*(code *)ppuVar2)();\n          iVar14 = (int)cVar5;\n        }" ({ "{") (expression_statement "*(undefined4 *)(puVar17 + -0xc) = 10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xc) = 10" (pointer_expression "*(undefined4 *)(puVar17 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc)" (( "(") (binary_expression "puVar17 + -0xc" (identifier "puVar17") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "10")) (; ";")) (expression_statement "*(int **)(puVar17 + -0x10) = piVar7;" (assignment_expression "*(int **)(puVar17 + -0x10) = piVar7" (pointer_expression "*(int **)(puVar17 + -0x10)" (* "*") (cast_expression "(int **)(puVar17 + -0x10)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0x10)" (( "(") (binary_expression "puVar17 + -0x10" (identifier "puVar17") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "piVar7")) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe79cb;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe79cb" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x14)" (( "(") (binary_expression "puVar17 + -0x14" (identifier "puVar17") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe79cb")) (; ";")) (expression_statement "cVar5 = (*(code *)ppuVar2)();" (assignment_expression "cVar5 = (*(code *)ppuVar2)()" (identifier "cVar5") (= "=") (call_expression "(*(code *)ppuVar2)()" (parenthesized_expression "(*(code *)ppuVar2)" (( "(") (pointer_expression "*(code *)ppuVar2" (* "*") (cast_expression "(code *)ppuVar2" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "ppuVar2"))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "iVar14 = (int)cVar5;" (assignment_expression "iVar14 = (int)cVar5" (identifier "iVar14") (= "=") (cast_expression "(int)cVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "cVar5"))) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }" (else "else") (compound_statement "{\n        iVar14 = (int)*(char *)((int)piVar7 + 0x27);\n      }" ({ "{") (expression_statement "iVar14 = (int)*(char *)((int)piVar7 + 0x27);" (assignment_expression "iVar14 = (int)*(char *)((int)piVar7 + 0x27)" (identifier "iVar14") (= "=") (cast_expression "(int)*(char *)((int)piVar7 + 0x27)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "*(char *)((int)piVar7 + 0x27)" (* "*") (cast_expression "(char *)((int)piVar7 + 0x27)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar7 + 0x27)" (( "(") (binary_expression "(int)piVar7 + 0x27" (cast_expression "(int)piVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar7")) (+ "+") (number_literal "0x27")) () ")")))))) (; ";")) (} "}")))) (expression_statement "*(int *)(puVar17 + -8) = iVar14;" (assignment_expression "*(int *)(puVar17 + -8) = iVar14" (pointer_expression "*(int *)(puVar17 + -8)" (* "*") (cast_expression "(int *)(puVar17 + -8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -8)" (( "(") (binary_expression "puVar17 + -8" (identifier "puVar17") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "iVar14")) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_;" (assignment_expression "*(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_" (pointer_expression "*(undefined4 *)(puVar17 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc)" (( "(") (binary_expression "puVar17 + -0xc" (identifier "puVar17") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (field_expression "local_1cc._0_4_" (identifier "local_1cc") (. ".") (field_identifier "_0_4_"))) (; ";")) (expression_statement "*(undefined ****)(puVar17 + -0x10) = local_1d0;" (assignment_expression "*(undefined ****)(puVar17 + -0x10) = local_1d0" (pointer_expression "*(undefined ****)(puVar17 + -0x10)" (* "*") (cast_expression "(undefined ****)(puVar17 + -0x10)" (( "(") (type_descriptor "undefined ****" (type_identifier "undefined") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (parenthesized_expression "(puVar17 + -0x10)" (( "(") (binary_expression "puVar17 + -0x10" (identifier "puVar17") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1d0")) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe78f7;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe78f7" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x14)" (( "(") (binary_expression "puVar17 + -0x14" (identifier "puVar17") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe78f7")) (; ";")) (expression_statement "FUN_001e7cb0();" (call_expression "FUN_001e7cb0()" (identifier "FUN_001e7cb0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (local_150 != local_1e0) {\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe7aef;\n      FUN_001e6db0();\n    }" (if "if") (parenthesized_expression "(local_150 != local_1e0)" (( "(") (binary_expression "local_150 != local_1e0" (identifier "local_150") (!= "!=") (identifier "local_1e0")) () ")")) (compound_statement "{\n      *(undefined1 **)(puVar17 + -0x10) = local_150;\n      *(undefined4 *)(puVar17 + -0x14) = 0xe7aef;\n      FUN_001e6db0();\n    }" ({ "{") (expression_statement "*(undefined1 **)(puVar17 + -0x10) = local_150;" (assignment_expression "*(undefined1 **)(puVar17 + -0x10) = local_150" (pointer_expression "*(undefined1 **)(puVar17 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0x10)" (( "(") (binary_expression "puVar17 + -0x10" (identifier "puVar17") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_150")) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe7aef;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe7aef" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x14)" (( "(") (binary_expression "puVar17 + -0x14" (identifier "puVar17") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe7aef")) (; ";")) (expression_statement "FUN_001e6db0();" (call_expression "FUN_001e6db0()" (identifier "FUN_001e6db0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "ppuVar4 = local_1c4;" (assignment_expression "ppuVar4 = local_1c4" (identifier "ppuVar4") (= "=") (identifier "local_1c4")) (; ";")) (expression_statement "*(undefined ****)(puVar17 + -0x10) = local_1dc;" (assignment_expression "*(undefined ****)(puVar17 + -0x10) = local_1dc" (pointer_expression "*(undefined ****)(puVar17 + -0x10)" (* "*") (cast_expression "(undefined ****)(puVar17 + -0x10)" (( "(") (type_descriptor "undefined ****" (type_identifier "undefined") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (parenthesized_expression "(puVar17 + -0x10)" (( "(") (binary_expression "puVar17 + -0x10" (identifier "puVar17") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1dc")) (; ";")) (expression_statement "local_134 = (undefined ***)(local_200 + 3);" (assignment_expression "local_134 = (undefined ***)(local_200 + 3)" (identifier "local_134") (= "=") (cast_expression "(undefined ***)(local_200 + 3)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(local_200 + 3)" (( "(") (binary_expression "local_200 + 3" (identifier "local_200") (+ "+") (number_literal "3")) () ")")))) (; ";")) (expression_statement "local_a4[0] = local_200 + 8;" (assignment_expression "local_a4[0] = local_200 + 8" (subscript_expression "local_a4[0]" (identifier "local_a4") ([ "[") (number_literal "0") (] "]")) (= "=") (binary_expression "local_200 + 8" (identifier "local_200") (+ "+") (number_literal "8"))) (; ";")) (expression_statement "local_12c[0] = local_1c4 + -0x9f2;" (assignment_expression "local_12c[0] = local_1c4 + -0x9f2" (subscript_expression "local_12c[0]" (identifier "local_12c") ([ "[") (number_literal "0") (] "]")) (= "=") (binary_expression "local_1c4 + -0x9f2" (identifier "local_1c4") (+ "+") (number_literal "-0x9f2"))) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe7b2f;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe7b2f" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x14)" (( "(") (binary_expression "puVar17 + -0x14" (identifier "puVar17") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe7b2f")) (; ";")) (expression_statement "FUN_00216e90();" (call_expression "FUN_00216e90()" (identifier "FUN_00216e90") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "*(undefined1 **)(puVar17 + -0x10) = local_f4;" (assignment_expression "*(undefined1 **)(puVar17 + -0x10) = local_f4" (pointer_expression "*(undefined1 **)(puVar17 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0x10)" (( "(") (binary_expression "puVar17 + -0x10" (identifier "puVar17") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_f4")) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe7b3d;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe7b3d" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x14)" (( "(") (binary_expression "puVar17 + -0x14" (identifier "puVar17") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe7b3d")) (; ";")) (expression_statement "FUN_001e75f0();" (call_expression "FUN_001e75f0()" (identifier "FUN_001e75f0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "local_12c[0] = ppuVar4 + -0xbd7;" (assignment_expression "local_12c[0] = ppuVar4 + -0xbd7" (subscript_expression "local_12c[0]" (identifier "local_12c") ([ "[") (number_literal "0") (] "]")) (= "=") (binary_expression "ppuVar4 + -0xbd7" (identifier "ppuVar4") (+ "+") (number_literal "-0xbd7"))) (; ";")) (expression_statement "*(undefined1 **)(puVar17 + -0x10) = local_110;" (assignment_expression "*(undefined1 **)(puVar17 + -0x10) = local_110" (pointer_expression "*(undefined1 **)(puVar17 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0x10)" (( "(") (binary_expression "puVar17 + -0x10" (identifier "puVar17") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_110")) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe7b5a;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe7b5a" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x14)" (( "(") (binary_expression "puVar17 + -0x14" (identifier "puVar17") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe7b5a")) (; ";")) (expression_statement "FUN_001e9510();" (call_expression "FUN_001e9510()" (identifier "FUN_001e9510") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "local_134 = local_1f4;" (assignment_expression "local_134 = local_1f4" (identifier "local_134") (= "=") (identifier "local_1f4")) (; ";")) (expression_statement "*(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;" (assignment_expression "*(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8" (pointer_expression "*(undefined **)((int)&local_134 + (int)local_1f4[-3])" (* "*") (cast_expression "(undefined **)((int)&local_134 + (int)local_1f4[-3])" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)&local_134 + (int)local_1f4[-3])" (( "(") (binary_expression "(int)&local_134 + (int)local_1f4[-3]" (cast_expression "(int)&local_134" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "&local_134" (& "&") (identifier "local_134"))) (+ "+") (cast_expression "(int)local_1f4[-3]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "local_1f4[-3]" (identifier "local_1f4") ([ "[") (number_literal "-3") (] "]")))) () ")")))) (= "=") (identifier "local_1f8")) (; ";")) (expression_statement "local_130 = 0;" (assignment_expression "local_130 = 0" (identifier "local_130") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_a4[0] = local_1fc + 2;" (assignment_expression "local_a4[0] = local_1fc + 2" (subscript_expression "local_a4[0]" (identifier "local_a4") ([ "[") (number_literal "0") (] "]")) (= "=") (binary_expression "local_1fc + 2" (identifier "local_1fc") (+ "+") (number_literal "2"))) (; ";")) (expression_statement "*(undefined ****)(puVar17 + -0x10) = local_1e8;" (assignment_expression "*(undefined ****)(puVar17 + -0x10) = local_1e8" (pointer_expression "*(undefined ****)(puVar17 + -0x10)" (* "*") (cast_expression "(undefined ****)(puVar17 + -0x10)" (( "(") (type_descriptor "undefined ****" (type_identifier "undefined") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (parenthesized_expression "(puVar17 + -0x10)" (( "(") (binary_expression "puVar17 + -0x10" (identifier "puVar17") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1e8")) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0x14) = 0xe7b9b;" (assignment_expression "*(undefined4 *)(puVar17 + -0x14) = 0xe7b9b" (pointer_expression "*(undefined4 *)(puVar17 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x14)" (( "(") (binary_expression "puVar17 + -0x14" (identifier "puVar17") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe7b9b")) (; ";")) (expression_statement "FUN_0022c040();" (call_expression "FUN_0022c040()" (identifier "FUN_0022c040") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar18 = puVar17;" (assignment_expression "puVar18 = puVar17" (identifier "puVar18") (= "=") (identifier "puVar17")) (; ";")) (} "}"))) (if_statement "if ((*(char *)(param_1 + 0x72d) != '\0') && (*(char *)(param_1 + 0x42e0) == '\0')) {\n    *(int *)(param_1 + 0x42e4) = (int)local_1c4 + -0x10e8db;\n  }" (if "if") (parenthesized_expression "((*(char *)(param_1 + 0x72d) != '\0') && (*(char *)(param_1 + 0x42e0) == '\0'))" (( "(") (binary_expression "(*(char *)(param_1 + 0x72d) != '\0') && (*(char *)(param_1 + 0x42e0) == '\0')" (parenthesized_expression "(*(char *)(param_1 + 0x72d) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x72d) != '\0'" (pointer_expression "*(char *)(param_1 + 0x72d)" (* "*") (cast_expression "(char *)(param_1 + 0x72d)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x72d)" (( "(") (binary_expression "param_1 + 0x72d" (identifier "param_1") (+ "+") (number_literal "0x72d")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(*(char *)(param_1 + 0x42e0) == '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x42e0) == '\0'" (pointer_expression "*(char *)(param_1 + 0x42e0)" (* "*") (cast_expression "(char *)(param_1 + 0x42e0)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x42e0)" (( "(") (binary_expression "param_1 + 0x42e0" (identifier "param_1") (+ "+") (number_literal "0x42e0")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n    *(int *)(param_1 + 0x42e4) = (int)local_1c4 + -0x10e8db;\n  }" ({ "{") (expression_statement "*(int *)(param_1 + 0x42e4) = (int)local_1c4 + -0x10e8db;" (assignment_expression "*(int *)(param_1 + 0x42e4) = (int)local_1c4 + -0x10e8db" (pointer_expression "*(int *)(param_1 + 0x42e4)" (* "*") (cast_expression "(int *)(param_1 + 0x42e4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x42e4)" (( "(") (binary_expression "param_1 + 0x42e4" (identifier "param_1") (+ "+") (number_literal "0x42e4")) () ")")))) (= "=") (binary_expression "(int)local_1c4 + -0x10e8db" (cast_expression "(int)local_1c4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1c4")) (+ "+") (number_literal "-0x10e8db"))) (; ";")) (} "}"))) (if_statement "if ((*(char *)(param_1 + 0x1a25) != '\0') && (*(char *)(param_1 + 0x1fc) == '\0')) {\n    *(undefined1 *)(param_1 + 0x1fd) = 1;\n  }" (if "if") (parenthesized_expression "((*(char *)(param_1 + 0x1a25) != '\0') && (*(char *)(param_1 + 0x1fc) == '\0'))" (( "(") (binary_expression "(*(char *)(param_1 + 0x1a25) != '\0') && (*(char *)(param_1 + 0x1fc) == '\0')" (parenthesized_expression "(*(char *)(param_1 + 0x1a25) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x1a25) != '\0'" (pointer_expression "*(char *)(param_1 + 0x1a25)" (* "*") (cast_expression "(char *)(param_1 + 0x1a25)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1a25)" (( "(") (binary_expression "param_1 + 0x1a25" (identifier "param_1") (+ "+") (number_literal "0x1a25")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(*(char *)(param_1 + 0x1fc) == '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x1fc) == '\0'" (pointer_expression "*(char *)(param_1 + 0x1fc)" (* "*") (cast_expression "(char *)(param_1 + 0x1fc)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1fc)" (( "(") (binary_expression "param_1 + 0x1fc" (identifier "param_1") (+ "+") (number_literal "0x1fc")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n    *(undefined1 *)(param_1 + 0x1fd) = 1;\n  }" ({ "{") (expression_statement "*(undefined1 *)(param_1 + 0x1fd) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x1fd) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x1fd)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x1fd)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1fd)" (( "(") (binary_expression "param_1 + 0x1fd" (identifier "param_1") (+ "+") (number_literal "0x1fd")) () ")")))) (= "=") (number_literal "1")) (; ";")) (} "}"))) (expression_statement "*(int *)(puVar18 + -0x10) = param_1;" (assignment_expression "*(int *)(puVar18 + -0x10) = param_1" (pointer_expression "*(int *)(puVar18 + -0x10)" (* "*") (cast_expression "(int *)(puVar18 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "param_1")) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe7bef;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe7bef" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe7bef")) (; ";")) (expression_statement "FUN_000ddde0();" (call_expression "FUN_000ddde0()" (identifier "FUN_000ddde0") (argument_list "()" (( "(") () ")"))) (; ";")) (if_statement "if (*(char *)(param_1 + 0x1a25) == '\0') {\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      if (*(char *)(param_1 + 0x5938) != '\0') {\n        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;\n        FUN_00065450();\n      }\n      if (*(char *)(param_1 + 0x318d) != '\0') {\n        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;\n        FUN_00065450();\n      }\n    }\n    if (*(int *)(param_1 + 0x1478) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe898c;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8994;\n      FUN_00065450();\n    }\n    if (*(int *)(param_1 + 0x1428) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c0;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c8;\n      FUN_00065450();\n    }\n    if ((*(char *)(param_1 + 0x318d) != '\0') && (*(int *)(param_1 + 0x3288) != 0)) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe7e13;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b;\n      FUN_00065450();\n    }\n  }\n  else {\n    if (*(char *)(param_1 + 0x5938) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8aea;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe892f;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8937;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x318d) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe894e;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8956;\n      FUN_00065450();\n    }\n  }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x1a25) == '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x1a25) == '\0'" (pointer_expression "*(char *)(param_1 + 0x1a25)" (* "*") (cast_expression "(char *)(param_1 + 0x1a25)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1a25)" (( "(") (binary_expression "param_1 + 0x1a25" (identifier "param_1") (+ "+") (number_literal "0x1a25")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      if (*(char *)(param_1 + 0x5938) != '\0') {\n        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;\n        FUN_00065450();\n      }\n      if (*(char *)(param_1 + 0x318d) != '\0') {\n        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;\n        FUN_00065450();\n      }\n    }\n    if (*(int *)(param_1 + 0x1478) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe898c;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8994;\n      FUN_00065450();\n    }\n    if (*(int *)(param_1 + 0x1428) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c0;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c8;\n      FUN_00065450();\n    }\n    if ((*(char *)(param_1 + 0x318d) != '\0') && (*(int *)(param_1 + 0x3288) != 0)) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe7e13;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b;\n      FUN_00065450();\n    }\n  }" ({ "{") (if_statement "if (*(char *)(param_1 + 0x2931) != '\0') {\n      if (*(char *)(param_1 + 0x5938) != '\0') {\n        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;\n        FUN_00065450();\n      }\n      if (*(char *)(param_1 + 0x318d) != '\0') {\n        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;\n        FUN_00065450();\n      }\n    }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x2931) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x2931) != '\0'" (pointer_expression "*(char *)(param_1 + 0x2931)" (* "*") (cast_expression "(char *)(param_1 + 0x2931)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x2931)" (( "(") (binary_expression "param_1 + 0x2931" (identifier "param_1") (+ "+") (number_literal "0x2931")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      if (*(char *)(param_1 + 0x5938) != '\0') {\n        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;\n        FUN_00065450();\n      }\n      if (*(char *)(param_1 + 0x318d) != '\0') {\n        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;\n        FUN_00065450();\n      }\n    }" ({ "{") (if_statement "if (*(char *)(param_1 + 0x5938) != '\0') {\n        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;\n        FUN_00065450();\n      }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x5938) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x5938) != '\0'" (pointer_expression "*(char *)(param_1 + 0x5938)" (* "*") (cast_expression "(char *)(param_1 + 0x5938)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x5938)" (( "(") (binary_expression "param_1 + 0x5938" (identifier "param_1") (+ "+") (number_literal "0x5938")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;\n        FUN_00065450();\n      }" ({ "{") (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined ***)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_1c4 + -0x3f6ac" (identifier "local_1c4") (+ "+") (number_literal "-0x3f6ac"))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8b0c" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe8b0c")) (; ";")) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" (identifier "uVar11") (= "=") (call_expression "gettext()" (identifier "gettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;" (assignment_expression "*(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14" (pointer_expression "*(undefined1 **)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined1 **)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "&LAB_000e8b14" (& "&") (identifier "LAB_000e8b14"))) (; ";")) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" (identifier "FUN_00065450") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (*(char *)(param_1 + 0x318d) != '\0') {\n        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;\n        FUN_00065450();\n      }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x318d) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x318d) != '\0'" (pointer_expression "*(char *)(param_1 + 0x318d)" (* "*") (cast_expression "(char *)(param_1 + 0x318d)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x318d)" (( "(") (binary_expression "param_1 + 0x318d" (identifier "param_1") (+ "+") (number_literal "0x318d")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;\n        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;\n        uVar11 = gettext();\n        *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;\n        FUN_00065450();\n      }" ({ "{") (expression_statement "*(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;" (assignment_expression "*(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393" (pointer_expression "*(int *)(puVar18 + -0x10)" (* "*") (cast_expression "(int *)(puVar18 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "(int)local_1c4 + -0x100393" (cast_expression "(int)local_1c4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_1c4")) (+ "+") (number_literal "-0x100393"))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe896d;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe896d" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe896d")) (; ";")) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" (identifier "uVar11") (= "=") (call_expression "gettext()" (identifier "gettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8975;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8975" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe8975")) (; ";")) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" (identifier "FUN_00065450") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (} "}"))) (if_statement "if (*(int *)(param_1 + 0x1478) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe898c;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8994;\n      FUN_00065450();\n    }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0x1478) != 0)" (( "(") (binary_expression "*(int *)(param_1 + 0x1478) != 0" (pointer_expression "*(int *)(param_1 + 0x1478)" (* "*") (cast_expression "(int *)(param_1 + 0x1478)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1478)" (( "(") (binary_expression "param_1 + 0x1478" (identifier "param_1") (+ "+") (number_literal "0x1478")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe898c;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8994;\n      FUN_00065450();\n    }" ({ "{") (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined ***)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_1c4 + -0x3f69b" (identifier "local_1c4") (+ "+") (number_literal "-0x3f69b"))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe898c;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe898c" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe898c")) (; ";")) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" (identifier "uVar11") (= "=") (call_expression "gettext()" (identifier "gettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8994;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8994" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe8994")) (; ";")) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" (identifier "FUN_00065450") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (*(int *)(param_1 + 0x1428) != 0) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c0;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c8;\n      FUN_00065450();\n    }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0x1428) != 0)" (( "(") (binary_expression "*(int *)(param_1 + 0x1428) != 0" (pointer_expression "*(int *)(param_1 + 0x1428)" (* "*") (cast_expression "(int *)(param_1 + 0x1428)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1428)" (( "(") (binary_expression "param_1 + 0x1428" (identifier "param_1") (+ "+") (number_literal "0x1428")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c0;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe89c8;\n      FUN_00065450();\n    }" ({ "{") (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined ***)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_1c4 + -0x3f690" (identifier "local_1c4") (+ "+") (number_literal "-0x3f690"))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe89c0;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe89c0" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe89c0")) (; ";")) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" (identifier "uVar11") (= "=") (call_expression "gettext()" (identifier "gettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe89c8;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe89c8" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe89c8")) (; ";")) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" (identifier "FUN_00065450") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if ((*(char *)(param_1 + 0x318d) != '\0') && (*(int *)(param_1 + 0x3288) != 0)) {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe7e13;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b;\n      FUN_00065450();\n    }" (if "if") (parenthesized_expression "((*(char *)(param_1 + 0x318d) != '\0') && (*(int *)(param_1 + 0x3288) != 0))" (( "(") (binary_expression "(*(char *)(param_1 + 0x318d) != '\0') && (*(int *)(param_1 + 0x3288) != 0)" (parenthesized_expression "(*(char *)(param_1 + 0x318d) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x318d) != '\0'" (pointer_expression "*(char *)(param_1 + 0x318d)" (* "*") (cast_expression "(char *)(param_1 + 0x318d)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x318d)" (( "(") (binary_expression "param_1 + 0x318d" (identifier "param_1") (+ "+") (number_literal "0x318d")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(*(int *)(param_1 + 0x3288) != 0)" (( "(") (binary_expression "*(int *)(param_1 + 0x3288) != 0" (pointer_expression "*(int *)(param_1 + 0x3288)" (* "*") (cast_expression "(int *)(param_1 + 0x3288)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x3288)" (( "(") (binary_expression "param_1 + 0x3288" (identifier "param_1") (+ "+") (number_literal "0x3288")) () ")")))) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe7e13;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b;\n      FUN_00065450();\n    }" ({ "{") (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined ***)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_1c4 + -0x3f684" (identifier "local_1c4") (+ "+") (number_literal "-0x3f684"))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe7e13;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe7e13" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe7e13")) (; ";")) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" (identifier "uVar11") (= "=") (call_expression "gettext()" (identifier "gettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b;" (assignment_expression "*(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b" (pointer_expression "*(undefined **)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined **)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "&UNK_000e7e1b" (& "&") (identifier "UNK_000e7e1b"))) (; ";")) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" (identifier "FUN_00065450") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n    if (*(char *)(param_1 + 0x5938) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8aea;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe892f;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8937;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x318d) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe894e;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8956;\n      FUN_00065450();\n    }\n  }" (else "else") (compound_statement "{\n    if (*(char *)(param_1 + 0x5938) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8aea;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x2931) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe892f;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8937;\n      FUN_00065450();\n    }\n    if (*(char *)(param_1 + 0x318d) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe894e;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8956;\n      FUN_00065450();\n    }\n  }" ({ "{") (if_statement "if (*(char *)(param_1 + 0x5938) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8aea;\n      FUN_00065450();\n    }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x5938) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x5938) != '\0'" (pointer_expression "*(char *)(param_1 + 0x5938)" (* "*") (cast_expression "(char *)(param_1 + 0x5938)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x5938)" (( "(") (binary_expression "param_1 + 0x5938" (identifier "param_1") (+ "+") (number_literal "0x5938")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8aea;\n      FUN_00065450();\n    }" ({ "{") (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined ***)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_1c4 + -0x3f6bf" (identifier "local_1c4") (+ "+") (number_literal "-0x3f6bf"))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8ae2" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe8ae2")) (; ";")) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" (identifier "uVar11") (= "=") (call_expression "gettext()" (identifier "gettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8aea;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8aea" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe8aea")) (; ";")) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" (identifier "FUN_00065450") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (*(char *)(param_1 + 0x2931) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe892f;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8937;\n      FUN_00065450();\n    }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x2931) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x2931) != '\0'" (pointer_expression "*(char *)(param_1 + 0x2931)" (* "*") (cast_expression "(char *)(param_1 + 0x2931)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x2931)" (( "(") (binary_expression "param_1 + 0x2931" (identifier "param_1") (+ "+") (number_literal "0x2931")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe892f;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8937;\n      FUN_00065450();\n    }" ({ "{") (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined ***)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_1c4 + -0x3f6b5" (identifier "local_1c4") (+ "+") (number_literal "-0x3f6b5"))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe892f;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe892f" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe892f")) (; ";")) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" (identifier "uVar11") (= "=") (call_expression "gettext()" (identifier "gettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8937;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8937" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe8937")) (; ";")) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" (identifier "FUN_00065450") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (*(char *)(param_1 + 0x318d) != '\0') {\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe894e;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8956;\n      FUN_00065450();\n    }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x318d) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x318d) != '\0'" (pointer_expression "*(char *)(param_1 + 0x318d)" (* "*") (cast_expression "(char *)(param_1 + 0x318d)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x318d)" (( "(") (binary_expression "param_1 + 0x318d" (identifier "param_1") (+ "+") (number_literal "0x318d")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;\n      *(undefined4 *)(puVar18 + -0x14) = 0xe894e;\n      uVar11 = gettext();\n      *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n      *(undefined4 *)(puVar18 + -0x14) = 0xe8956;\n      FUN_00065450();\n    }" ({ "{") (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined ***)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_1c4 + -0x3f6a3" (identifier "local_1c4") (+ "+") (number_literal "-0x3f6a3"))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe894e;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe894e" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe894e")) (; ";")) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" (identifier "uVar11") (= "=") (call_expression "gettext()" (identifier "gettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8956;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8956" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe8956")) (; ";")) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" (identifier "FUN_00065450") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (} "}")))) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = *(undefined4 *)(param_1 + 0x27ec);" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = *(undefined4 *)(param_1 + 0x27ec)" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(param_1 + 0x27ec)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x27ec)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x27ec)" (( "(") (binary_expression "param_1 + 0x27ec" (identifier "param_1") (+ "+") (number_literal "0x27ec")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe7c40;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe7c40" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe7c40")) (; ";")) (expression_statement "iVar14 = FUN_000dd760();" (assignment_expression "iVar14 = FUN_000dd760()" (identifier "iVar14") (= "=") (call_expression "FUN_000dd760()" (identifier "FUN_000dd760") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if ((iVar14 != 0) &&\n     (((*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||\n      (*(char *)(param_1 + 0x318d) != '\0')))) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f678;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8910;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8918;\n    FUN_00065450();\n  }" (if "if") (parenthesized_expression "((iVar14 != 0) &&\n     (((*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||\n      (*(char *)(param_1 + 0x318d) != '\0'))))" (( "(") (binary_expression "(iVar14 != 0) &&\n     (((*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||\n      (*(char *)(param_1 + 0x318d) != '\0')))" (parenthesized_expression "(iVar14 != 0)" (( "(") (binary_expression "iVar14 != 0" (identifier "iVar14") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(((*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||\n      (*(char *)(param_1 + 0x318d) != '\0')))" (( "(") (parenthesized_expression "((*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||\n      (*(char *)(param_1 + 0x318d) != '\0'))" (( "(") (binary_expression "(*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||\n      (*(char *)(param_1 + 0x318d) != '\0')" (parenthesized_expression "(*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0'))" (( "(") (binary_expression "*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')" (binary_expression "*(char *)(param_1 + 0x1a25) != '\0'" (pointer_expression "*(char *)(param_1 + 0x1a25)" (* "*") (cast_expression "(char *)(param_1 + 0x1a25)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1a25)" (( "(") (binary_expression "param_1 + 0x1a25" (identifier "param_1") (+ "+") (number_literal "0x1a25")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (|| "||") (parenthesized_expression "(*(char *)(param_1 + 0x2931) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x2931) != '\0'" (pointer_expression "*(char *)(param_1 + 0x2931)" (* "*") (cast_expression "(char *)(param_1 + 0x2931)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x2931)" (( "(") (binary_expression "param_1 + 0x2931" (identifier "param_1") (+ "+") (number_literal "0x2931")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (|| "||") (parenthesized_expression "(*(char *)(param_1 + 0x318d) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x318d) != '\0'" (pointer_expression "*(char *)(param_1 + 0x318d)" (* "*") (cast_expression "(char *)(param_1 + 0x318d)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x318d)" (( "(") (binary_expression "param_1 + 0x318d" (identifier "param_1") (+ "+") (number_literal "0x318d")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f678;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8910;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8918;\n    FUN_00065450();\n  }" ({ "{") (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f678;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f678" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined ***)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_1c4 + -0x3f678" (identifier "local_1c4") (+ "+") (number_literal "-0x3f678"))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8910;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8910" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe8910")) (; ";")) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" (identifier "uVar11") (= "=") (call_expression "gettext()" (identifier "gettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8918;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8918" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe8918")) (; ";")) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" (identifier "FUN_00065450") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if ((*(char *)(param_1 + 0x1ae4) != '\0') &&\n     ((dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1)))) {\n    local_1cc = dVar1;\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f668;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe88cc;\n    uVar11 = gettext();\n    dVar1 = local_1cc;\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(double *)(puVar18 + -0xc) = dVar1;\n                    \n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe88de;\n    FUN_00065450();\n  }" (if "if") (parenthesized_expression "((*(char *)(param_1 + 0x1ae4) != '\0') &&\n     ((dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1))))" (( "(") (binary_expression "(*(char *)(param_1 + 0x1ae4) != '\0') &&\n     ((dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1)))" (parenthesized_expression "(*(char *)(param_1 + 0x1ae4) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x1ae4) != '\0'" (pointer_expression "*(char *)(param_1 + 0x1ae4)" (* "*") (cast_expression "(char *)(param_1 + 0x1ae4)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1ae4)" (( "(") (binary_expression "param_1 + 0x1ae4" (identifier "param_1") (+ "+") (number_literal "0x1ae4")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "((dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1)))" (( "(") (parenthesized_expression "(dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1))" (( "(") (comma_expression "dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1)" (assignment_expression "dVar1 = *(double *)(param_1 + 0x1ae8)" (identifier "dVar1") (= "=") (pointer_expression "*(double *)(param_1 + 0x1ae8)" (* "*") (cast_expression "(double *)(param_1 + 0x1ae8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1ae8)" (( "(") (binary_expression "param_1 + 0x1ae8" (identifier "param_1") (+ "+") (number_literal "0x1ae8")) () ")"))))) (, ",") (binary_expression "dVar1 < 0.0 || (1.0 <= dVar1)" (binary_expression "dVar1 < 0.0" (identifier "dVar1") (< "<") (number_literal "0.0")) (|| "||") (parenthesized_expression "(1.0 <= dVar1)" (( "(") (binary_expression "1.0 <= dVar1" (number_literal "1.0") (<= "<=") (identifier "dVar1")) () ")")))) () ")")) () ")"))) () ")")) (compound_statement "{\n    local_1cc = dVar1;\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f668;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe88cc;\n    uVar11 = gettext();\n    dVar1 = local_1cc;\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(double *)(puVar18 + -0xc) = dVar1;\n                    \n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe88de;\n    FUN_00065450();\n  }" ({ "{") (expression_statement "local_1cc = dVar1;" (assignment_expression "local_1cc = dVar1" (identifier "local_1cc") (= "=") (identifier "dVar1")) (; ";")) (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f668;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f668" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined ***)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_1c4 + -0x3f668" (identifier "local_1c4") (+ "+") (number_literal "-0x3f668"))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe88cc;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe88cc" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe88cc")) (; ";")) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" (identifier "uVar11") (= "=") (call_expression "gettext()" (identifier "gettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "dVar1 = local_1cc;" (assignment_expression "dVar1 = local_1cc" (identifier "dVar1") (= "=") (identifier "local_1cc")) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(double *)(puVar18 + -0xc) = dVar1;" (assignment_expression "*(double *)(puVar18 + -0xc) = dVar1" (pointer_expression "*(double *)(puVar18 + -0xc)" (* "*") (cast_expression "(double *)(puVar18 + -0xc)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0xc)" (( "(") (binary_expression "puVar18 + -0xc" (identifier "puVar18") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "dVar1")) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe88de;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe88de" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe88de")) (; ";")) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" (identifier "FUN_00065450") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (*(char *)(param_1 + 0x5a1c) == '\0') {\n    if (*(int *)(param_1 + 0x5a10) == 0) goto LAB_000e7d53;\n  }\n  else if (*(int *)(param_1 + 0x5a10) == 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a66;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a6e;\n    FUN_00065450();\n  }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x5a1c) == '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x5a1c) == '\0'" (pointer_expression "*(char *)(param_1 + 0x5a1c)" (* "*") (cast_expression "(char *)(param_1 + 0x5a1c)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x5a1c)" (( "(") (binary_expression "param_1 + 0x5a1c" (identifier "param_1") (+ "+") (number_literal "0x5a1c")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    if (*(int *)(param_1 + 0x5a10) == 0) goto LAB_000e7d53;\n  }" ({ "{") (if_statement "if (*(int *)(param_1 + 0x5a10) == 0) goto LAB_000e7d53;" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0x5a10) == 0)" (( "(") (binary_expression "*(int *)(param_1 + 0x5a10) == 0" (pointer_expression "*(int *)(param_1 + 0x5a10)" (* "*") (cast_expression "(int *)(param_1 + 0x5a10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x5a10)" (( "(") (binary_expression "param_1 + 0x5a10" (identifier "param_1") (+ "+") (number_literal "0x5a10")) () ")")))) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000e7d53;" (goto "goto") (statement_identifier "LAB_000e7d53") (; ";"))) (} "}")) (else_clause "else if (*(int *)(param_1 + 0x5a10) == 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a66;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a6e;\n    FUN_00065450();\n  }" (else "else") (if_statement "if (*(int *)(param_1 + 0x5a10) == 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a66;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a6e;\n    FUN_00065450();\n  }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0x5a10) == 0)" (( "(") (binary_expression "*(int *)(param_1 + 0x5a10) == 0" (pointer_expression "*(int *)(param_1 + 0x5a10)" (* "*") (cast_expression "(int *)(param_1 + 0x5a10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x5a10)" (( "(") (binary_expression "param_1 + 0x5a10" (identifier "param_1") (+ "+") (number_literal "0x5a10")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a66;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a6e;\n    FUN_00065450();\n  }" ({ "{") (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined ***)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_1c4 + -0x3f658" (identifier "local_1c4") (+ "+") (number_literal "-0x3f658"))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8a66;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8a66" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe8a66")) (; ";")) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" (identifier "uVar11") (= "=") (call_expression "gettext()" (identifier "gettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8a6e;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8a6e" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe8a6e")) (; ";")) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" (identifier "FUN_00065450") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))))) (if_statement "if (*(char *)(param_1 + 0x318d) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f63c;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a85;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a8d;\n    FUN_00065450();\n  }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x318d) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x318d) != '\0'" (pointer_expression "*(char *)(param_1 + 0x318d)" (* "*") (cast_expression "(char *)(param_1 + 0x318d)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x318d)" (( "(") (binary_expression "param_1 + 0x318d" (identifier "param_1") (+ "+") (number_literal "0x318d")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f63c;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a85;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a8d;\n    FUN_00065450();\n  }" ({ "{") (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f63c;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f63c" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined ***)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_1c4 + -0x3f63c" (identifier "local_1c4") (+ "+") (number_literal "-0x3f63c"))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8a85;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8a85" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe8a85")) (; ";")) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" (identifier "uVar11") (= "=") (call_expression "gettext()" (identifier "gettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8a8d;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8a8d" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe8a8d")) (; ";")) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" (identifier "FUN_00065450") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (*(char *)(param_1 + 0x3095) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f630;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aa4;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aac;\n    FUN_00065450();\n  }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x3095) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x3095) != '\0'" (pointer_expression "*(char *)(param_1 + 0x3095)" (* "*") (cast_expression "(char *)(param_1 + 0x3095)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x3095)" (( "(") (binary_expression "param_1 + 0x3095" (identifier "param_1") (+ "+") (number_literal "0x3095")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f630;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aa4;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8aac;\n    FUN_00065450();\n  }" ({ "{") (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f630;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f630" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined ***)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_1c4 + -0x3f630" (identifier "local_1c4") (+ "+") (number_literal "-0x3f630"))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8aa4;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8aa4" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe8aa4")) (; ";")) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" (identifier "uVar11") (= "=") (call_expression "gettext()" (identifier "gettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8aac;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8aac" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe8aac")) (; ";")) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" (identifier "FUN_00065450") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (*(int *)(param_1 + 0x593c) != 0) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f621;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8ac3;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8acb;\n    FUN_00065450();\n  }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0x593c) != 0)" (( "(") (binary_expression "*(int *)(param_1 + 0x593c) != 0" (pointer_expression "*(int *)(param_1 + 0x593c)" (* "*") (cast_expression "(int *)(param_1 + 0x593c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x593c)" (( "(") (binary_expression "param_1 + 0x593c" (identifier "param_1") (+ "+") (number_literal "0x593c")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f621;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8ac3;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8acb;\n    FUN_00065450();\n  }" ({ "{") (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f621;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f621" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined ***)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_1c4 + -0x3f621" (identifier "local_1c4") (+ "+") (number_literal "-0x3f621"))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8ac3;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8ac3" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe8ac3")) (; ";")) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" (identifier "uVar11") (= "=") (call_expression "gettext()" (identifier "gettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8acb;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8acb" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe8acb")) (; ";")) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" (identifier "FUN_00065450") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (*(char *)(param_1 + 0x56b9) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f614;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a28;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a30;\n    FUN_00065450();\n  }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x56b9) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x56b9) != '\0'" (pointer_expression "*(char *)(param_1 + 0x56b9)" (* "*") (cast_expression "(char *)(param_1 + 0x56b9)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x56b9)" (( "(") (binary_expression "param_1 + 0x56b9" (identifier "param_1") (+ "+") (number_literal "0x56b9")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f614;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a28;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a30;\n    FUN_00065450();\n  }" ({ "{") (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f614;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f614" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined ***)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_1c4 + -0x3f614" (identifier "local_1c4") (+ "+") (number_literal "-0x3f614"))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8a28;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8a28" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe8a28")) (; ";")) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" (identifier "uVar11") (= "=") (call_expression "gettext()" (identifier "gettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8a30;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8a30" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe8a30")) (; ";")) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" (identifier "FUN_00065450") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (*(char *)(param_1 + 0x2931) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f607;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a47;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a4f;\n    FUN_00065450();\n  }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x2931) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x2931) != '\0'" (pointer_expression "*(char *)(param_1 + 0x2931)" (* "*") (cast_expression "(char *)(param_1 + 0x2931)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x2931)" (( "(") (binary_expression "param_1 + 0x2931" (identifier "param_1") (+ "+") (number_literal "0x2931")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f607;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a47;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe8a4f;\n    FUN_00065450();\n  }" ({ "{") (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f607;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f607" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined ***)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_1c4 + -0x3f607" (identifier "local_1c4") (+ "+") (number_literal "-0x3f607"))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8a47;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8a47" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe8a47")) (; ";")) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" (identifier "uVar11") (= "=") (call_expression "gettext()" (identifier "gettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8a4f;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8a4f" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe8a4f")) (; ";")) (expression_statement "FUN_00065450();" (call_expression "FUN_00065450()" (identifier "FUN_00065450") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (*(char *)(param_1 + 0x18b1) != '\0') {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5fb;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe871f;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8727;\n    FUN_000654e0();\n    *(undefined1 *)(param_1 + 0x18b1) = 0;\n  }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x18b1) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x18b1) != '\0'" (pointer_expression "*(char *)(param_1 + 0x18b1)" (* "*") (cast_expression "(char *)(param_1 + 0x18b1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x18b1)" (( "(") (binary_expression "param_1 + 0x18b1" (identifier "param_1") (+ "+") (number_literal "0x18b1")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5fb;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe871f;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe8727;\n    FUN_000654e0();\n    *(undefined1 *)(param_1 + 0x18b1) = 0;\n  }" ({ "{") (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5fb;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5fb" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined ***)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_1c4 + -0x3f5fb" (identifier "local_1c4") (+ "+") (number_literal "-0x3f5fb"))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe871f;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe871f" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe871f")) (; ";")) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" (identifier "uVar11") (= "=") (call_expression "gettext()" (identifier "gettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe8727;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe8727" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe8727")) (; ";")) (expression_statement "FUN_000654e0();" (call_expression "FUN_000654e0()" (identifier "FUN_000654e0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "*(undefined1 *)(param_1 + 0x18b1) = 0;" (assignment_expression "*(undefined1 *)(param_1 + 0x18b1) = 0" (pointer_expression "*(undefined1 *)(param_1 + 0x18b1)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x18b1)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x18b1)" (( "(") (binary_expression "param_1 + 0x18b1" (identifier "param_1") (+ "+") (number_literal "0x18b1")) () ")")))) (= "=") (number_literal "0")) (; ";")) (} "}"))) (expression_statement "bVar22 = *(int *)(param_1 + 0x5934) == 0;" (assignment_expression "bVar22 = *(int *)(param_1 + 0x5934) == 0" (identifier "bVar22") (= "=") (binary_expression "*(int *)(param_1 + 0x5934) == 0" (pointer_expression "*(int *)(param_1 + 0x5934)" (* "*") (cast_expression "(int *)(param_1 + 0x5934)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x5934)" (( "(") (binary_expression "param_1 + 0x5934" (identifier "param_1") (+ "+") (number_literal "0x5934")) () ")")))) (== "==") (number_literal "0"))) (; ";")) (expression_statement "bVar24 = !bVar22;" (assignment_expression "bVar24 = !bVar22" (identifier "bVar24") (= "=") (unary_expression "!bVar22" (! "!") (identifier "bVar22"))) (; ";")) (if_statement "if (bVar24) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5ef;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86e7;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86ef;\n    FUN_000654e0();\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }" (if "if") (parenthesized_expression "(bVar24)" (( "(") (identifier "bVar24") () ")")) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5ef;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86e7;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86ef;\n    FUN_000654e0();\n    *(undefined4 *)(param_1 + 0x5934) = 0;\n  }" ({ "{") (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5ef;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5ef" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined ***)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_1c4 + -0x3f5ef" (identifier "local_1c4") (+ "+") (number_literal "-0x3f5ef"))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe86e7;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe86e7" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe86e7")) (; ";")) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" (identifier "uVar11") (= "=") (call_expression "gettext()" (identifier "gettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe86ef;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe86ef" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe86ef")) (; ";")) (expression_statement "FUN_000654e0();" (call_expression "FUN_000654e0()" (identifier "FUN_000654e0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x5934) = 0;" (assignment_expression "*(undefined4 *)(param_1 + 0x5934) = 0" (pointer_expression "*(undefined4 *)(param_1 + 0x5934)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x5934)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x5934)" (( "(") (binary_expression "param_1 + 0x5934" (identifier "param_1") (+ "+") (number_literal "0x5934")) () ")")))) (= "=") (number_literal "0")) (; ";")) (} "}"))) (expression_statement "bVar24 = bVar24 && (undefined1 *)0xffffffef < puVar18 + -0x10;" (assignment_expression "bVar24 = bVar24 && (undefined1 *)0xffffffef < puVar18 + -0x10" (identifier "bVar24") (= "=") (binary_expression "bVar24 && (undefined1 *)0xffffffef < puVar18 + -0x10" (identifier "bVar24") (&& "&&") (binary_expression "(undefined1 *)0xffffffef < puVar18 + -0x10" (cast_expression "(undefined1 *)0xffffffef" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xffffffef")) (< "<") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10"))))) (; ";")) (expression_statement "bVar22 = bVar22 || puVar18 == (undefined1 *)0x0;" (assignment_expression "bVar22 = bVar22 || puVar18 == (undefined1 *)0x0" (identifier "bVar22") (= "=") (binary_expression "bVar22 || puVar18 == (undefined1 *)0x0" (identifier "bVar22") (|| "||") (binary_expression "puVar18 == (undefined1 *)0x0" (identifier "puVar18") (== "==") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))))) (; ";")) (expression_statement "iVar14 = 5;" (assignment_expression "iVar14 = 5" (identifier "iVar14") (= "=") (number_literal "5")) (; ";")) (expression_statement "pbVar19 = *(byte **)(param_1 + 0x99c);" (assignment_expression "pbVar19 = *(byte **)(param_1 + 0x99c)" (identifier "pbVar19") (= "=") (pointer_expression "*(byte **)(param_1 + 0x99c)" (* "*") (cast_expression "(byte **)(param_1 + 0x99c)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x99c)" (( "(") (binary_expression "param_1 + 0x99c" (identifier "param_1") (+ "+") (number_literal "0x99c")) () ")"))))) (; ";")) (expression_statement "pbVar20 = local_1f0;" (assignment_expression "pbVar20 = local_1f0" (identifier "pbVar20") (= "=") (identifier "local_1f0")) (; ";")) (do_statement "do {\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    bVar24 = *pbVar19 < *pbVar20;\n    bVar22 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n    pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n  } while (bVar22);" (do "do") (compound_statement "{\n    if (iVar14 == 0) break;\n    iVar14 = iVar14 + -1;\n    bVar24 = *pbVar19 < *pbVar20;\n    bVar22 = *pbVar19 == *pbVar20;\n    pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;\n    pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;\n  }" ({ "{") (if_statement "if (iVar14 == 0) break;" (if "if") (parenthesized_expression "(iVar14 == 0)" (( "(") (binary_expression "iVar14 == 0" (identifier "iVar14") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" (identifier "iVar14") (= "=") (binary_expression "iVar14 + -1" (identifier "iVar14") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar24 = *pbVar19 < *pbVar20;" (assignment_expression "bVar24 = *pbVar19 < *pbVar20" (identifier "bVar24") (= "=") (binary_expression "*pbVar19 < *pbVar20" (pointer_expression "*pbVar19" (* "*") (identifier "pbVar19")) (< "<") (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20")))) (; ";")) (expression_statement "bVar22 = *pbVar19 == *pbVar20;" (assignment_expression "bVar22 = *pbVar19 == *pbVar20" (identifier "bVar22") (= "=") (binary_expression "*pbVar19 == *pbVar20" (pointer_expression "*pbVar19" (* "*") (identifier "pbVar19")) (== "==") (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20")))) (; ";")) (expression_statement "pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1" (identifier "pbVar19") (= "=") (binary_expression "pbVar19 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar19 + (uint)bVar25 * -2" (identifier "pbVar19") (+ "+") (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar25")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1" (identifier "pbVar20") (= "=") (binary_expression "pbVar20 + (uint)bVar25 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar25 * -2" (identifier "pbVar20") (+ "+") (binary_expression "(uint)bVar25 * -2" (cast_expression "(uint)bVar25" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar25")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar22)" (( "(") (identifier "bVar22") () ")")) (; ";")) (if_statement "if ((!bVar24 && !bVar22) != bVar24) {\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5e5;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86af;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe86b7;\n    FUN_000654e0();\n    *(byte **)(param_1 + 0x99c) = local_1f0;\n  }" (if "if") (parenthesized_expression "((!bVar24 && !bVar22) != bVar24)" (( "(") (binary_expression "(!bVar24 && !bVar22) != bVar24" (parenthesized_expression "(!bVar24 && !bVar22)" (( "(") (binary_expression "!bVar24 && !bVar22" (unary_expression "!bVar24" (! "!") (identifier "bVar24")) (&& "&&") (unary_expression "!bVar22" (! "!") (identifier "bVar22"))) () ")")) (!= "!=") (identifier "bVar24")) () ")")) (compound_statement "{\n    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5e5;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe86af;\n    uVar11 = gettext();\n    *(undefined4 *)(puVar18 + -0x10) = uVar11;\n                    \n    *(undefined4 *)(puVar18 + -0x14) = 0xe86b7;\n    FUN_000654e0();\n    *(byte **)(param_1 + 0x99c) = local_1f0;\n  }" ({ "{") (expression_statement "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5e5;" (assignment_expression "*(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5e5" (pointer_expression "*(undefined ***)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined ***)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined ***" (type_identifier "undefined") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "local_1c4 + -0x3f5e5" (identifier "local_1c4") (+ "+") (number_literal "-0x3f5e5"))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe86af;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe86af" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe86af")) (; ";")) (expression_statement "uVar11 = gettext();" (assignment_expression "uVar11 = gettext()" (identifier "uVar11") (= "=") (call_expression "gettext()" (identifier "gettext") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x10) = uVar11;" (assignment_expression "*(undefined4 *)(puVar18 + -0x10) = uVar11" (pointer_expression "*(undefined4 *)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe86b7;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe86b7" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe86b7")) (; ";")) (expression_statement "FUN_000654e0();" (call_expression "FUN_000654e0()" (identifier "FUN_000654e0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "*(byte **)(param_1 + 0x99c) = local_1f0;" (assignment_expression "*(byte **)(param_1 + 0x99c) = local_1f0" (pointer_expression "*(byte **)(param_1 + 0x99c)" (* "*") (cast_expression "(byte **)(param_1 + 0x99c)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x99c)" (( "(") (binary_expression "param_1 + 0x99c" (identifier "param_1") (+ "+") (number_literal "0x99c")) () ")")))) (= "=") (identifier "local_1f0")) (; ";")) (} "}"))) (labeled_statement "LAB_000e7d53:\n  if (*(char *)(param_1 + 0x3344) != '\0') {\n    *(undefined1 *)(param_1 + 0x32c9) = 1;\n  }" (statement_identifier "LAB_000e7d53") (: ":") (if_statement "if (*(char *)(param_1 + 0x3344) != '\0') {\n    *(undefined1 *)(param_1 + 0x32c9) = 1;\n  }" (if "if") (parenthesized_expression "(*(char *)(param_1 + 0x3344) != '\0')" (( "(") (binary_expression "*(char *)(param_1 + 0x3344) != '\0'" (pointer_expression "*(char *)(param_1 + 0x3344)" (* "*") (cast_expression "(char *)(param_1 + 0x3344)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x3344)" (( "(") (binary_expression "param_1 + 0x3344" (identifier "param_1") (+ "+") (number_literal "0x3344")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    *(undefined1 *)(param_1 + 0x32c9) = 1;\n  }" ({ "{") (expression_statement "*(undefined1 *)(param_1 + 0x32c9) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x32c9) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x32c9)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x32c9)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x32c9)" (( "(") (binary_expression "param_1 + 0x32c9" (identifier "param_1") (+ "+") (number_literal "0x32c9")) () ")")))) (= "=") (number_literal "1")) (; ";")) (} "}")))) (if_statement "if (local_1bc != local_1ec) {\n    *(undefined1 **)(puVar18 + -0x10) = local_1bc;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe7d83;\n    FUN_001e6db0();\n  }" (if "if") (parenthesized_expression "(local_1bc != local_1ec)" (( "(") (binary_expression "local_1bc != local_1ec" (identifier "local_1bc") (!= "!=") (identifier "local_1ec")) () ")")) (compound_statement "{\n    *(undefined1 **)(puVar18 + -0x10) = local_1bc;\n    *(undefined4 *)(puVar18 + -0x14) = 0xe7d83;\n    FUN_001e6db0();\n  }" ({ "{") (expression_statement "*(undefined1 **)(puVar18 + -0x10) = local_1bc;" (assignment_expression "*(undefined1 **)(puVar18 + -0x10) = local_1bc" (pointer_expression "*(undefined1 **)(puVar18 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar18 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar18 + -0x10)" (( "(") (binary_expression "puVar18 + -0x10" (identifier "puVar18") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "local_1bc")) (; ";")) (expression_statement "*(undefined4 *)(puVar18 + -0x14) = 0xe7d83;" (assignment_expression "*(undefined4 *)(puVar18 + -0x14) = 0xe7d83" (pointer_expression "*(undefined4 *)(puVar18 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar18 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar18 + -0x14)" (( "(") (binary_expression "puVar18 + -0x14" (identifier "puVar18") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0xe7d83")) (; ";")) (expression_statement "FUN_001e6db0();" (call_expression "FUN_001e6db0()" (identifier "FUN_001e6db0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (return_statement "return;" (return "return") (; ";")) (} "}")))

/* WARNING: Function: __x86.get_pc_thunk.ax replaced with injection: get_pc_thunk_ax */
/* WARNING: Enum "DT": Some values do not have unique names */
/* DWARF original prototype: void finalize(General_options * this) */

void __thiscall gold::type_1::function_1(type_1 *this)

{
  anon_union_16_2_edb7204a_for_basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>var_4
  *var_5;
  anon_union_16_2_edb7204a_for_basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>var_4
  *var_6;
  type_2 *ppSVar3;
  double var_75;
  anon_union_16_2_edb7204a_for_basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>var_4
  *var_7;
  var_8<var_2> *var_52;
  type_3 iVar7;
  type_4 *var_70;
  type_4 *puVar9;
  var_8<var_2> var_9;
  type_5 *__node;
  type_6 *var_63;
  type_7 *var_65;
  type_8 var_73;
  size_t sVar13;
  type_9 var_37;
  type_10 *this_00;
  type_11 var_24;
  char *var_22;
  int *piVar16;
  int var_14;
  type_12 *this_01;
  type_13 sVar18;
  type_9 var_38;
  type_14 *var_18;
  type_14 *var_15;
  type_14 *var_16;
  bool var_17;
  bool var_19;
  bool var_12;
  type_14 bVar26;
  type_14 *var_79;
  type_15 local_1c0 [4];
  type_16 libpath;
  type_17 local_1a4;
  type_17 local_188;
  type_17 local_16c;
  type_16 line;
  type_18 in;
  type_13 var_40;
  anon_union_16_2_edb7204a_for_basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>var_4
  var_10;
  type_19 local_11c;
  type_20 local_110 [28];
  var_11<var_2> local_f4 [60];
  type_7 auStack_b8 [5];
  type_4 **local_a4 [5];
  type_14 var_48;
  type_7 local_34;
  type_19 local_30;
  type_7 local_2c;
  type_7 local_28;
  type_7 local_24;
  type_7 local_20;
  
  bVar26 = 0;
  var_12 = (this->strip_all_).value;
  if (var_12 == false) {
    if ((this->strip_debug_).value != false) goto LAB_000e79ea;
    if ((this->strip_debug_non_line_).value != false) {
      var_17 = false;
      goto LAB_000e79f9;
    }
    var_17 = false;
    if ((this->Bshareable_).value != false) goto LAB_000e7a0c;
  }
  else {
    (this->strip_debug_).value = true;
LAB_000e79ea:
    var_17 = true;
    (this->strip_debug_non_line_).value = true;
LAB_000e79f9:
    (this->strip_debug_gdb_).value = true;
    if ((this->Bshareable_).value != false) {
LAB_000e7a0c:
      (this->shared_).value = true;
    }
    if (((var_12 != false) && ((this->relocatable_).value != false)) &&
       ((this->strip_all_).value = false, !var_17)) {
                    /* WARNING: Subroutine does not return */
      var_13("../../gold/options.cc",0x453,"finalize");
    }
  }
  if ((this->dc_).value != false) {
    (this->define_common_).value = true;
  }
  if ((this->dp_).value != false) {
    (this->define_common_).value = true;
  }
  if ((this->define_common_).user_set_via_option == false) {
    (this->define_common_).value = (bool)((this->relocatable_).value ^ 1);
  }
  var_12 = (this->execstack_).value == false;
  if (var_12) {
    var_12 = (this->noexecstack_).value == false;
    if (!var_12) {
      this->execstack_status_ = EXECSTACK_NO;
    }
  }
  else {
    this->execstack_status_ = EXECSTACK_YES;
  }
  var_17 = false;
  var_14 = 5;
  var_18 = (type_14 *)(this->icf_).value;
  var_15 = var_18;
  var_16 = (type_14 *)0x28e9b2;
  do {
    if (var_14 == 0) break;
    var_14 = var_14 + -1;
    var_17 = *var_15 < *var_16;
    var_12 = *var_15 == *var_16;
    var_15 = var_15 + 1;
    var_16 = var_16 + 1;
  } while (var_12);
  var_19 = false;
  var_12 = (!var_17 && !var_12) == var_17;
  if (var_12) {
    this->icf_status_ = var_78;
  }
  else {
    var_14 = 5;
    var_15 = (type_14 *)0x28e304;
    do {
      if (var_14 == 0) break;
      var_14 = var_14 + -1;
      var_19 = *var_18 < *var_15;
      var_12 = *var_18 == *var_15;
      var_18 = var_18 + 1;
      var_15 = var_15 + 1;
    } while (var_12);
    this->icf_status_ = ((!var_19 && !var_12) == var_19) + var_20;
  }
  if ((this->demangle_).user_set_via_option == false) {
    if ((this->no_demangle_).user_set_via_option == false) {
      var_22 = var_21("COLLECT_NO_DEMANGLE");
      this->do_demangle_ = var_22 == (char *)0x0;
    }
    else {
      this->do_demangle_ = false;
    }
  }
  else {
    var_22 = (this->demangle_).value;
    this->do_demangle_ = true;
    if (*var_22 != '\0') {
      var_24 = var_23(var_22);
      if (var_24 == var_25) {
                    /* WARNING: Subroutine does not return */
        var_26("unknown demangling style \'%s\'");
      }
      var_27(var_24);
    }
  }
  var_79 = (type_14 *)0x28e9b2;
  var_12 = false;
  var_17 = (this->orphan_handling_).user_set_via_option == false;
  if (!var_17) {
    var_18 = (type_14 *)(this->orphan_handling_).value;
    var_14 = 6;
    var_15 = var_18;
    var_16 = (type_14 *)0x2a3d62;
    do {
      if (var_14 == 0) break;
      var_14 = var_14 + -1;
      var_12 = *var_15 < *var_16;
      var_17 = *var_15 == *var_16;
      var_15 = var_15 + (type_9)bVar26 * -2 + 1;
      var_16 = var_16 + (type_9)bVar26 * -2 + 1;
    } while (var_17);
    var_19 = false;
    var_12 = (!var_12 && !var_17) == var_12;
    if (var_12) {
      this->orphan_handling_enum_ = ORPHAN_PLACE;
    }
    else {
      var_14 = 8;
      var_15 = var_18;
      var_16 = (type_14 *)"discard";
      do {
        if (var_14 == 0) break;
        var_14 = var_14 + -1;
        var_19 = *var_15 < *var_16;
        var_12 = *var_15 == *var_16;
        var_15 = var_15 + (type_9)bVar26 * -2 + 1;
        var_16 = var_16 + (type_9)bVar26 * -2 + 1;
      } while (var_12);
      var_17 = false;
      var_12 = (!var_19 && !var_12) == var_19;
      if (var_12) {
        this->orphan_handling_enum_ = ORPHAN_DISCARD;
      }
      else {
        var_14 = 5;
        var_15 = var_18;
        var_16 = &DAT_00280715;
        do {
          if (var_14 == 0) break;
          var_14 = var_14 + -1;
          var_17 = *var_15 < *var_16;
          var_12 = *var_15 == *var_16;
          var_15 = var_15 + (type_9)bVar26 * -2 + 1;
          var_16 = var_16 + (type_9)bVar26 * -2 + 1;
        } while (var_12);
        var_19 = false;
        var_12 = (!var_17 && !var_12) == var_17;
        if (var_12) {
          this->orphan_handling_enum_ = ORPHAN_WARN;
        }
        else {
          var_14 = 6;
          var_15 = (type_14 *)0x2a4fde;
          do {
            if (var_14 == 0) break;
            var_14 = var_14 + -1;
            var_19 = *var_18 < *var_15;
            var_12 = *var_18 == *var_15;
            var_18 = var_18 + (type_9)bVar26 * -2 + 1;
            var_15 = var_15 + (type_9)bVar26 * -2 + 1;
          } while (var_12);
          if ((!var_19 && !var_12) == var_19) {
            this->orphan_handling_enum_ = ORPHAN_ERROR;
          }
        }
      }
    }
  }
  if (((this->print_map_).value != false) && ((this->Map_).user_set_via_option == false)) {
    (this->Map_).user_set_via_option = true;
    (this->Map_).value = "-";
  }
  if (((this->nmagic_).value != false) || ((this->omagic_).value != false)) {
    this->static_ = true;
  }
  var_14 = (this->thread_count_).value;
  if (0 < var_14) {
    if ((this->thread_count_initial_).value == 0) {
      (this->thread_count_initial_).value = var_14;
    }
    if ((this->thread_count_middle_).value == 0) {
      (this->thread_count_middle_).value = var_14;
    }
    if ((this->thread_count_final_).value == 0) {
      (this->thread_count_final_).value = var_14;
    }
  }
  libpath.field_2._M_local_buf[0] = '\0';
  var_5 = &libpath.field_2;
  libpath._M_string_length = 0;
  libpath._M_dataplus._M_p = (type_2)var_5;
  if ((this->Y_).user_set_via_option == false) {
    if ((this->nostdlib_).value == false) {
      var_32 = (type_4 **)&var_10;
                    /* try { // try from 000e81b5 to 000e81b9 has its CatchHandler @ 000e8b37 */
      std::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>::
      var_28<var_29*>();
      var_7 = &local_1a4.name_.field_2;
      local_1a4.name_._M_dataplus._M_p = (type_2)var_7;
                    /* try { // try from 000e81e2 to 000e81e6 has its CatchHandler @ 000e8ba5 */
      std::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>::
      var_28<var_2*>();
      local_1a4.put_in_sysroot_ = true;
      local_1a4.is_in_sysroot_ = false;
      if (local_1a4.name_._M_string_length == 0) {
                    /* try { // try from 000e8607 to 000e860b has its CatchHandler @ 000e8b3e */
        std::string::var_30((type_16 *)&local_1a4,0,0,".",1);
      }
      this_00 = &(this->library_path_).value;
      iVar7._M_current =
           (this->library_path_).value.
           super__Vector_base<gold::type_17,_std::var_1<gold::type_17>var_3>.
           _M_impl._M_finish;
      if (iVar7._M_current ==
          (this->library_path_).value.
          super__Vector_base<gold::type_17,_std::var_1<gold::type_17>var_3>.
          _M_impl._M_end_of_storage) {
                    /* try { // try from 000e8623 to 000e8627 has its CatchHandler @ 000e8b45 */
        std::vector<gold::type_17,_std::var_1<gold::type_17>var_3>::
        _M_realloc_insert<const_gold::type_17&>(this_00,iVar7,&local_1a4);
      }
      else {
        ((iVar7._M_current)->name_)._M_dataplus._M_p = (type_2)&((iVar7._M_current)->name_).field_2
        ;
                    /* try { // try from 000e823f to 000e8243 has its CatchHandler @ 000e8b45 */
        std::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>::
        var_28<var_2*>();
        (iVar7._M_current)->put_in_sysroot_ = local_1a4.put_in_sysroot_;
        (iVar7._M_current)->is_in_sysroot_ = local_1a4.is_in_sysroot_;
        ppSVar3 = &(this->library_path_).value.
                   super__Vector_base<gold::type_17,_std::var_1<gold::type_17>var_3>
                   ._M_impl._M_finish;
        *ppSVar3 = *ppSVar3 + 1;
      }
      if ((anon_union_16_2_edb7204a_for_basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>var_4
           *)local_1a4.name_._M_dataplus._M_p != var_7) {
        var_31(local_1a4.name_._M_dataplus._M_p);
      }
      if ((anon_union_16_2_edb7204a_for_basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>var_4
           *)var_32 != &var_10) {
        var_31(var_32);
      }
      var_32 = (type_4 **)&var_10;
                    /* try { // try from 000e82c9 to 000e82cd has its CatchHandler @ 000e8b37 */
      std::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>::
      var_28<var_29*>();
      var_7 = &local_188.name_.field_2;
      local_188.name_._M_dataplus._M_p = (type_2)var_7;
                    /* try { // try from 000e82f6 to 000e82fa has its CatchHandler @ 000e8b7d */
      std::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>::
      var_28<var_2*>();
      local_188.put_in_sysroot_ = true;
      local_188.is_in_sysroot_ = false;
      if (local_188.name_._M_string_length == 0) {
                    /* try { // try from 000e87a7 to 000e87ab has its CatchHandler @ 000e8b68 */
        std::string::var_30((type_16 *)&local_188,0,0,".",1);
      }
      iVar7._M_current =
           (this->library_path_).value.
           super__Vector_base<gold::type_17,_std::var_1<gold::type_17>var_3>.
           _M_impl._M_finish;
      if (iVar7._M_current ==
          (this->library_path_).value.
          super__Vector_base<gold::type_17,_std::var_1<gold::type_17>var_3>.
          _M_impl._M_end_of_storage) {
                    /* try { // try from 000e883b to 000e883f has its CatchHandler @ 000e8b6f */
        std::vector<gold::type_17,_std::var_1<gold::type_17>var_3>::
        _M_realloc_insert<const_gold::type_17&>(this_00,iVar7,&local_188);
      }
      else {
        ((iVar7._M_current)->name_)._M_dataplus._M_p = (type_2)&((iVar7._M_current)->name_).field_2
        ;
                    /* try { // try from 000e8345 to 000e8349 has its CatchHandler @ 000e8b6f */
        std::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>::
        var_28<var_2*>();
        (iVar7._M_current)->put_in_sysroot_ = local_188.put_in_sysroot_;
        (iVar7._M_current)->is_in_sysroot_ = local_188.is_in_sysroot_;
        ppSVar3 = &(this->library_path_).value.
                   super__Vector_base<gold::type_17,_std::var_1<gold::type_17>var_3>
                   ._M_impl._M_finish;
        *ppSVar3 = *ppSVar3 + 1;
      }
      if ((anon_union_16_2_edb7204a_for_basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>var_4
           *)local_188.name_._M_dataplus._M_p != var_7) {
        var_31(local_188.name_._M_dataplus._M_p);
      }
      if ((anon_union_16_2_edb7204a_for_basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>var_4
           *)var_32 != &var_10) {
        var_31(var_32);
      }
      var_32 = (type_4 **)&var_10;
                    /* try { // try from 000e83cf to 000e83d3 has its CatchHandler @ 000e8b37 */
      std::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>::
      var_28<var_29*>();
      var_7 = &local_16c.name_.field_2;
      local_16c.name_._M_dataplus._M_p = (type_2)var_7;
                    /* try { // try from 000e83fc to 000e8400 has its CatchHandler @ 000e8b76 */
      std::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>::
      var_28<var_2*>();
      local_16c.put_in_sysroot_ = true;
      local_16c.is_in_sysroot_ = false;
      if (local_16c.name_._M_string_length == 0) {
                    /* try { // try from 000e87cf to 000e87d3 has its CatchHandler @ 000e8b61 */
        std::string::var_30((type_16 *)&local_16c,0,0,".",1);
      }
      iVar7._M_current =
           (this->library_path_).value.
           super__Vector_base<gold::type_17,_std::var_1<gold::type_17>var_3>.
           _M_impl._M_finish;
      if (iVar7._M_current ==
          (this->library_path_).value.
          super__Vector_base<gold::type_17,_std::var_1<gold::type_17>var_3>.
          _M_impl._M_end_of_storage) {
                    /* try { // try from 000e881b to 000e881f has its CatchHandler @ 000e8b4c */
        std::vector<gold::type_17,_std::var_1<gold::type_17>var_3>::
        _M_realloc_insert<const_gold::type_17&>(this_00,iVar7,&local_16c);
      }
      else {
        ((iVar7._M_current)->name_)._M_dataplus._M_p = (type_2)&((iVar7._M_current)->name_).field_2
        ;
                    /* try { // try from 000e844b to 000e844f has its CatchHandler @ 000e8b4c */
        std::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>::
        var_28<var_2*>();
        (iVar7._M_current)->put_in_sysroot_ = local_16c.put_in_sysroot_;
        (iVar7._M_current)->is_in_sysroot_ = local_16c.is_in_sysroot_;
        ppSVar3 = &(this->library_path_).value.
                   super__Vector_base<gold::type_17,_std::var_1<gold::type_17>var_3>
                   ._M_impl._M_finish;
        *ppSVar3 = *ppSVar3 + 1;
      }
      if ((anon_union_16_2_edb7204a_for_basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>var_4
           *)local_16c.name_._M_dataplus._M_p != var_7) {
        var_31(local_16c.name_._M_dataplus._M_p);
      }
      if ((anon_union_16_2_edb7204a_for_basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>var_4
           *)var_32 != &var_10) {
        var_31(var_32);
      }
      var_32 = (type_4 **)&var_10;
                    /* try { // try from 000e84d5 to 000e84d9 has its CatchHandler @ 000e8b37 */
      std::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>::
      var_28<var_29*>();
      line._M_dataplus._M_p = (type_2)&line.field_2;
                    /* try { // try from 000e850e to 000e8512 has its CatchHandler @ 000e8b1b */
      std::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>::
      var_28<var_2*>();
      if (line._M_string_length == 0) {
                    /* try { // try from 000e87fc to 000e8800 has its CatchHandler @ 000e8b5a */
        std::string::var_30((type_16 *)&line,0,0,".",1);
      }
      iVar7._M_current =
           (this->library_path_).value.
           super__Vector_base<gold::type_17,_std::var_1<gold::type_17>var_3>.
           _M_impl._M_finish;
      if (iVar7._M_current ==
          (this->library_path_).value.
          super__Vector_base<gold::type_17,_std::var_1<gold::type_17>var_3>.
          _M_impl._M_end_of_storage) {
                    /* try { // try from 000e8860 to 000e8864 has its CatchHandler @ 000e8b14 */
        std::vector<gold::type_17,_std::var_1<gold::type_17>var_3>::
        _M_realloc_insert<const_gold::type_17&>(this_00,iVar7,(type_17 *)&line);
      }
      else {
        ((iVar7._M_current)->name_)._M_dataplus._M_p = (type_2)&((iVar7._M_current)->name_).field_2
        ;
                    /* try { // try from 000e855d to 000e8561 has its CatchHandler @ 000e8b14 */
        std::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>::
        var_28<var_2*>();
        (iVar7._M_current)->put_in_sysroot_ = true;
        (iVar7._M_current)->is_in_sysroot_ = false;
        ppSVar3 = &(this->library_path_).value.
                   super__Vector_base<gold::type_17,_std::var_1<gold::type_17>var_3>
                   ._M_impl._M_finish;
        *ppSVar3 = *ppSVar3 + 1;
      }
      if ((anon_union_16_2_edb7204a_for_basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>var_4
           *)line._M_dataplus._M_p != &line.field_2) {
        var_31(line._M_dataplus._M_p);
      }
      if ((anon_union_16_2_edb7204a_for_basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>var_4
           *)var_32 != &var_10) {
        var_31(var_32);
      }
      goto LAB_000e7f08;
    }
  }
  else {
    var_22 = (this->Y_).value;
    sVar13 = var_33(var_22);
                    /* try { // try from 000e7ede to 000e7f8e has its CatchHandler @ 000e8b37 */
    std::string::var_30((type_16 *)&libpath,0,0,var_22,sVar13);
    var_14 = var_55::string::var_34((type_16 *)&libpath,0,2,"P,");
    if (var_14 == 0) {
      sVar18 = libpath._M_string_length;
      if (2 < libpath._M_string_length) {
        sVar18 = 2;
      }
                    /* try { // try from 000e877d to 000e8781 has its CatchHandler @ 000e8b37 */
      std::string::var_35((type_16 *)&libpath,0,sVar18);
    }
LAB_000e7f08:
    var_38 = 0;
    if (libpath._M_string_length != 0) {
      do {
        var_37 = var_55::string::var_36((type_16 *)&libpath,':',var_38);
        if ((var_37 == 0xffffffff) || (var_37 != var_38)) {
          if (libpath._M_string_length < var_38) {
                    /* WARNING: Subroutine does not return */
            std::var_39("%s: __pos (which is %zu) > this->size() (which is %zu)");
          }
          line._M_dataplus._M_p = (type_2)&line.field_2;
          std::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>::
          var_28<var_29*>();
          var_32 = (type_4 **)&var_10;
                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */
          std::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>::
          var_28<var_2*>();
          local_11c._0_1_ = true;
          local_11c._1_1_ = false;
          if (var_40 == 0) {
                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */
            std::string::var_30((type_16 *)&in,0,0,".",1);
          }
          iVar7._M_current =
               (this->library_path_).value.
               super__Vector_base<gold::type_17,_std::var_1<gold::type_17>var_3>.
               _M_impl._M_finish;
          if (iVar7._M_current ==
              (this->library_path_).value.
              super__Vector_base<gold::type_17,_std::var_1<gold::type_17>var_3>.
              _M_impl._M_end_of_storage) {
                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */
            std::vector<gold::type_17,_std::var_1<gold::type_17>var_3>::
            _M_realloc_insert<const_gold::type_17&>
                      (&(this->library_path_).value,iVar7,(type_17 *)&in);
          }
          else {
            ((iVar7._M_current)->name_)._M_dataplus._M_p =
                 (type_2)&((iVar7._M_current)->name_).field_2;
                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */
            std::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>::
            var_28<var_2*>();
            (iVar7._M_current)->put_in_sysroot_ = local_11c._0_1_;
            (iVar7._M_current)->is_in_sysroot_ = local_11c._1_1_;
            ppSVar3 = &(this->library_path_).value.
                       super__Vector_base<gold::type_17,_std::var_1<gold::type_17>var_3>
                       ._M_impl._M_finish;
            *ppSVar3 = *ppSVar3 + 1;
          }
          if ((anon_union_16_2_edb7204a_for_basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>var_4
               *)var_32 != &var_10) {
            var_31(var_32);
          }
          if ((anon_union_16_2_edb7204a_for_basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>var_4
               *)line._M_dataplus._M_p != &line.field_2) {
            var_31(line._M_dataplus._M_p);
          }
          if (var_37 == 0xffffffff) break;
        }
        var_38 = var_37 + 1;
      } while( true );
    }
  }
  if ((this->retain_symbols_file_).value != (char *)0x0) {
    std::ios_base::var_41((var_41 *)local_a4);
    puVar9 = PTR_DAT_0038c8a0;
    var_70 = var_42;
    local_34 = 0;
    local_2c = 0;
    local_a4[0] = &PTR__ios_0038c7b8;
    local_30 = 0;
    local_28 = 0;
    var_7 = (anon_union_16_2_edb7204a_for_basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>var_4
              *)var_42;
    local_24 = 0;
    local_20 = 0;
    var_32 = (type_4 **)var_7;
    *(type_4 **)(&in + *(int *)(var_42 + -0xc)) = PTR_DAT_0038c8a0;
                    /* try { // try from 000e77b7 to 000e77bb has its CatchHandler @ 000e8b92 */
    std::ios::var_43((type_12 *)((type_21 *)&in + *(int *)(var_42 + -0xc)),(type_22 *)0x0);
    var_32 = &PTR__ifstream_0038c8b4;
    local_a4[0] = &PTR__ifstream_0038c8c8;
                    /* try { // try from 000e77e9 to 000e77ed has its CatchHandler @ 000e8b84 */
    std::filebuf::var_44((var_44 *)var_10._M_local_buf);
                    /* try { // try from 000e77f7 to 000e77fb has its CatchHandler @ 000e8b29 */
    std::ios::var_43((type_12 *)local_a4,(type_22 *)var_10._M_local_buf);
                    /* try { // try from 000e780b to 000e783a has its CatchHandler @ 000e8b30 */
    var_14 = var_55::filebuf::var_45((var_44 *)var_10._M_local_buf,(this->retain_symbols_file_).value
                                ,_S_in);
    this_01 = (type_12 *)((type_21 *)&in + (int)*(type_4 **)((int)var_32 + -0xc));
    if (var_14 == 0) {
                    /* try { // try from 000e8751 to 000e8755 has its CatchHandler @ 000e8b30 */
      std::ios::var_46(this_01,*(type_23 *)
                               (*(type_4 **)((int)var_32 + -0xc) + (int)&var_10 + 0xc) |
                              var_47);
    }
    else {
      std::ios::var_46(this_01,_S_goodbit);
    }
    if ((var_48 & 5) != 0) {
      piVar16 = var_49();
      var_50(*piVar16);
      var_22 = (char *)var_51();
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e8a0c to 000e8a10 has its CatchHandler @ 000e8b30 */
      var_26(var_22);
    }
    var_6 = &line.field_2;
    line.field_2._M_local_buf[0] = '\0';
    line._M_string_length = 0;
    var_52 = *(var_8<var_2> **var_57)((int)auStack_b8 + (int)*(type_4 **)((int)var_32 + -0xc));
    line._M_dataplus._M_p = (type_2)var_6;
    if (var_52 == (var_8<var_2> *)0x0) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e8af0 to 000e8af4 has its CatchHandler @ 000e8b8b */
      std::var_53();
    }
    if (var_52[0x1c] == (var_8<var_2>)0x0) {
                    /* try { // try from 000e80ec to 000e8113 has its CatchHandler @ 000e8b8b */
      std::var_8<var_2>::var_54(var_52);
      var_9 = (var_8<var_2>)0xa;
      if (*(type_24 **)(*(int *)var_52 + 0x18) != var_55::var_8<var_2>::var_56) {
        var_9 = (var_8<var_2>var_57)(**(type_24 **)(*(int *)var_52 + 0x18))();
      }
    }
    else {
      var_9 = var_52[0x27];
    }
                    /* try { // try from 000e78b1 to 000e78f6 has its CatchHandler @ 000e8b8b */
    var_55::getline<var_2,var_55::char_traits<var_2>,var_55::var_1<var_2>>
              ((type_21 *)&in,(type_16 *)&line,(char)var_9);
    while ((var_48 & 5) == 0) {
      if ((line._M_string_length != 0) && (line._M_dataplus._M_p[line._M_string_length - 1] == '\r')
         ) {
                    /* try { // try from 000e7e32 to 000e7e36 has its CatchHandler @ 000e8b8b */
        std::string::var_58((type_16 *)&line,line._M_string_length - 1,'\0');
      }
      __node = (type_5 *)
               var_55::var_59(line._M_dataplus._M_p,line._M_string_length,0xc70f6907);
      var_38 = (type_9)__node % (this->symbols_to_retain_)._M_h._M_bucket_count;
      var_63 = var_55::
                _Hashtable<var_55::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>,_std::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>,_std::var_1<var_55::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>var_3>,_std::__detail::_Identity,_std::equal_to<var_55::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>var_3>,_std::hash<var_55::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>var_3>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::var_60<true,var_61,var_61>var_3>
                ::var_62
                          (&(this->symbols_to_retain_)._M_h,var_38,&line,(type_25)__node);
      if ((var_63 == (type_6 *)0x0) || (var_63->_M_nxt == (type_26 *)0x0)) {
                    /* try { // try from 000e7a7b to 000e7a7f has its CatchHandler @ 000e8b8b */
        var_65 = (type_7 *)var_64(0x20);
        *var_65 = 0;
        var_65[1] = var_65 + 3;
                    /* try { // try from 000e7aa7 to 000e7aab has its CatchHandler @ 000e8b99 */
        std::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>::
        var_28<var_2*>();
                    /* try { // try from 000e7ac4 to 000e7ac8 has its CatchHandler @ 000e8b8b */
        var_55::
        _Hashtable<var_55::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>,_std::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>,_std::var_1<var_55::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>var_3>,_std::__detail::_Identity,_std::equal_to<var_55::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>var_3>,_std::hash<var_55::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>var_3>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::var_60<true,var_61,var_61>var_3>
        ::var_66
                  ((_Hashtable<var_55::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>,_std::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>,_std::var_1<var_55::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>var_3>,_std::__detail::_Identity,_std::equal_to<var_55::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>var_3>,_std::hash<var_55::__cxx11::basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>var_3>,_std::__detail::_Mod_range_hashing,_std::__detail::_Default_ranged_hash,_std::__detail::_Prime_rehash_policy,_std::__detail::var_60<true,var_61,var_61>var_3>
                    *)local_1c0,(type_13)&this->symbols_to_retain_,var_38,__node,
                   (type_13)var_65);
      }
      var_52 = *(var_8<var_2> **var_57)((int)auStack_b8 + (int)*(type_4 **)((int)var_32 + -0xc));
      if (var_52 == (var_8<var_2> *)0x0) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e88aa to 000e88ae has its CatchHandler @ 000e8b8b */
        std::var_53();
      }
      if (var_52[0x1c] == (var_8<var_2>)0x0) {
                    /* try { // try from 000e79a3 to 000e79ca has its CatchHandler @ 000e8b8b */
        std::var_8<var_2>::var_54(var_52);
        var_9 = (var_8<var_2>)0xa;
        if (*(type_24 **)(*(int *)var_52 + 0x18) != var_55::var_8<var_2>::var_56) {
          var_9 = (var_8<var_2>var_57)(**(type_24 **)(*(int *)var_52 + 0x18))();
        }
      }
      else {
        var_9 = var_52[0x27];
      }
      var_55::getline<var_2,var_55::char_traits<var_2>,var_55::var_1<var_2>>
                ((type_21 *)&in,(type_16 *)&line,(char)var_9);
    }
    if ((anon_union_16_2_edb7204a_for_basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>var_4
         *)line._M_dataplus._M_p != var_6) {
      var_31(line._M_dataplus._M_p);
    }
    var_32 = &PTR__ifstream_0038c8b4;
    local_a4[0] = &PTR__ifstream_0038c8c8;
    var_10._M_allocated_capacity = (type_13)&var_67;
    std::filebuf::var_68((var_44 *)var_10._M_local_buf);
    std::var_11<var_2>::~var_11(local_f4);
    var_10._M_allocated_capacity = (type_13)&var_69;
    std::locale::~type_20(local_110);
    var_32 = (type_4 **)var_7;
    *(type_4 **)(&in + *(int *)(var_70 + -0xc)) = puVar9;
    local_a4[0] = &PTR__ios_0038c7b8;
    std::ios_base::~var_41((var_41 *)local_a4);
  }
  if (((this->Bgroup_).value != false) && ((this->unresolved_symbols_).user_set_via_option == false)
     ) {
    (this->unresolved_symbols_).value = "report-all";
  }
  if (((this->shared_).value != false) &&
     ((this->allow_shlib_undefined_).user_set_via_option == false)) {
    (this->allow_shlib_undefined_).value = true;
  }
                    /* try { // try from 000e7bea to 000e7e1a has its CatchHandler @ 000e8b37 */
  var_71(this);
  if ((this->shared_).value == false) {
    if ((this->pie_).value != false) {
      if (this->static_ != false) {
        var_22 = (char *)var_51();
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e8b0f to 000e8b13 has its CatchHandler @ 000e8b37 */
        var_26(var_22);
      }
      if ((this->relocatable_).value != false) {
        var_22 = (char *)var_51();
                    /* WARNING: Subroutine does not return */
        var_26(var_22);
      }
    }
    if ((this->filter_).value != (char *)0x0) {
      var_22 = (char *)var_51();
                    /* WARNING: Subroutine does not return */
      var_26(var_22);
    }
    if ((this->auxiliary_).value._M_h._M_element_count != 0) {
      var_22 = (char *)var_51();
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e89c3 to 000e89c7 has its CatchHandler @ 000e8b37 */
      var_26(var_22);
    }
    if (((this->relocatable_).value != false) && ((this->retain_symbols_file_).value != (char *)0x0)
       ) {
      var_22 = (char *)var_51();
                    /* WARNING: Subroutine does not return */
      var_26(var_22);
    }
  }
  else {
    if (this->static_ != false) {
      var_22 = (char *)var_51();
                    /* WARNING: Subroutine does not return */
      var_26(var_22);
    }
    if ((this->pie_).value != false) {
      var_22 = (char *)var_51();
                    /* WARNING: Subroutine does not return */
      var_26(var_22);
    }
    if ((this->relocatable_).value != false) {
      var_22 = (char *)var_51();
                    /* WARNING: Subroutine does not return */
      var_26(var_22);
    }
  }
  var_73 = var_72((this->oformat_).value);
  if ((var_73 != var_74) &&
     ((((this->shared_).value != false || ((this->pie_).value != false)) ||
      ((this->relocatable_).value != false)))) {
    var_22 = (char *)var_51();
                    /* WARNING: Subroutine does not return */
    var_26(var_22);
  }
  if (((this->hash_bucket_empty_fraction_).user_set_via_option != false) &&
     ((var_75 = (this->hash_bucket_empty_fraction_).value, var_75 < 0.0 || (1.0 <= var_75)))) {
    var_22 = (char *)var_51();
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e88d9 to 000e8993 has its CatchHandler @ 000e8b37 */
    var_26(var_22);
  }
  if (this->implicit_incremental_ == false) {
    if (this->incremental_mode_ == var_76) goto LAB_000e7d53;
  }
  else if (this->incremental_mode_ == var_76) {
    var_22 = (char *)var_51();
                    /* WARNING: Subroutine does not return */
    var_26(var_22);
  }
  if ((this->relocatable_).value != false) {
    var_22 = (char *)var_51();
                    /* WARNING: Subroutine does not return */
    var_26(var_22);
  }
  if ((this->emit_relocs_).value != false) {
    var_22 = (char *)var_51();
                    /* WARNING: Subroutine does not return */
    var_26(var_22);
  }
  if (this->plugins_ != (type_27 *)0x0) {
    var_22 = (char *)var_51();
                    /* WARNING: Subroutine does not return */
    var_26(var_22);
  }
  if ((this->relro_).value != false) {
    var_22 = (char *)var_51();
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e8a2b to 000e8ae9 has its CatchHandler @ 000e8b37 */
    var_26(var_22);
  }
  if ((this->pie_).value != false) {
    var_22 = (char *)var_51();
                    /* WARNING: Subroutine does not return */
    var_26(var_22);
  }
  if ((this->gc_sections_).value != false) {
    var_22 = (char *)var_51();
    var_77(var_22);
    (this->gc_sections_).value = false;
  }
  var_17 = this->icf_status_ == var_78;
  var_12 = !var_17;
  if (var_12) {
    var_22 = (char *)var_51();
    var_77(var_22);
    this->icf_status_ = var_78;
  }
  var_12 = var_12 && (type_15 *)0xffffffef < &stack0xfffffde4;
  var_17 = var_17 || &stack0x00000000 == (type_15 *)0x20c;
  var_14 = 5;
  var_18 = (type_14 *)(this->compress_debug_sections_).value;
  do {
    if (var_14 == 0) break;
    var_14 = var_14 + -1;
    var_12 = *var_18 < *var_79;
    var_17 = *var_18 == *var_79;
    var_18 = var_18 + (type_9)bVar26 * -2 + 1;
    var_79 = var_79 + (type_9)bVar26 * -2 + 1;
  } while (var_17);
  if ((!var_12 && !var_17) != var_12) {
    var_22 = (char *)var_51();
                    /* try { // try from 000e86b2 to 000e8726 has its CatchHandler @ 000e8b37 */
    var_77(var_22);
    (this->compress_debug_sections_).value = "none";
  }
LAB_000e7d53:
  if ((this->rosegment_gap_).user_set_via_option != false) {
    (this->rosegment_).value = true;
  }
  if ((anon_union_16_2_edb7204a_for_basic_string<var_2,_std::char_traits<var_2>,_std::var_1<var_2>var_3>var_4
       *)libpath._M_dataplus._M_p != var_5) {
    var_31(libpath._M_dataplus._M_p);
  }
  return;
}


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

/* WARNING: Function: __i686.get_pc_thunk.ax replaced with injection: get_pc_thunk_ax */

void MASKED(int param_1)

{
  double dVar1;
  undefined **ppuVar2;
  undefined1 **ppuVar3;
  undefined **ppuVar4;
  char cVar5;
  uint uVar6;
  int *piVar7;
  undefined4 *puVar8;
  size_t sVar9;
  uint uVar10;
  undefined4 uVar11;
  char *pcVar12;
  undefined4 uVar13;
  int iVar14;
  undefined *puVar15;
  uint uVar16;
  undefined1 *puVar17;
  undefined1 *puVar18;
  byte *pbVar19;
  byte *pbVar20;
  byte *pbVar21;
  bool bVar22;
  bool bVar23;
  bool bVar24;
  byte bVar25;
  undefined4 uStackY_230;
  undefined1 auStack_20c [12];
  undefined **local_200;
  undefined **local_1fc;
  undefined *local_1f8;
  undefined ***local_1f4;
  byte *local_1f0;
  undefined1 *local_1ec;
  undefined ***local_1e8;
  undefined1 *local_1e4;
  undefined1 *local_1e0;
  undefined ***local_1dc;
  uint local_1d8;
  undefined1 **local_1d4;
  undefined ***local_1d0;
  double local_1cc;
  undefined **local_1c4;
  undefined1 local_1c0 [4];
  undefined1 *local_1bc;
  uint local_1b8;
  undefined1 local_1b4 [16];
  undefined1 *local_1a4;
  int local_1a0;
  undefined1 local_19c [16];
  undefined2 local_18c;
  undefined1 *local_188;
  int local_184;
  undefined1 local_180 [16];
  undefined2 local_170;
  undefined1 *local_16c;
  int local_168;
  undefined1 local_164 [16];
  undefined2 local_154;
  undefined1 *local_150;
  int local_14c;
  undefined1 local_148 [16];
  undefined2 local_138;
  undefined ***local_134;
  int local_130;
  undefined **local_12c [4];
  undefined2 local_11c;
  undefined1 local_110 [28];
  undefined1 local_f4 [60];
  int aiStack_b8 [5];
  undefined **local_a4 [5];
  byte local_90;
  undefined4 local_34;
  undefined2 local_30;
  undefined4 local_2c;
  undefined4 local_28;
  undefined4 local_24;
  undefined4 local_20;
  
  bVar25 = 0;
  local_1c4 = &__DT_PLTGOT;
  if (*(char *)(param_1 + 0x3469) == '\0') {
    if (*(char *)(param_1 + 0x34e5) != '\0') goto LAB_000e79ea;
    if (*(char *)(param_1 + 0x3561) != '\0') {
      bVar24 = false;
      goto LAB_000e79f9;
    }
    bVar24 = false;
    if (*(char *)(param_1 + 0x7a9) != '\0') goto LAB_000e7a0c;
  }
  else {
    *(undefined1 *)(param_1 + 0x34e5) = 1;
LAB_000e79ea:
    bVar24 = true;
    *(undefined1 *)(param_1 + 0x3561) = 1;
LAB_000e79f9:
    *(undefined1 *)(param_1 + 0x35dd) = 1;
    if (*(char *)(param_1 + 0x7a9) != '\0') {
LAB_000e7a0c:
      *(undefined1 *)(param_1 + 0x1a25) = 1;
    }
    if (((*(char *)(param_1 + 0x3469) != '\0') && (*(char *)(param_1 + 0x318d) != '\0')) &&
       (*(undefined1 *)(param_1 + 0x3469) = 0, !bVar24)) {
      local_1c4 = &__DT_PLTGOT;
                    /* WARNING: Subroutine does not return */
      FUN_00069d00("../../gold/options.cc",0x453,"finalize",param_1);
    }
  }
  if (*(char *)(param_1 + 0xbcd) != '\0') {
    *(undefined1 *)(param_1 + 0xb51) = 1;
  }
  if (*(char *)(param_1 + 0xc49) != '\0') {
    *(undefined1 *)(param_1 + 0xb51) = 1;
  }
  if (*(char *)(param_1 + 0xb50) == '\0') {
    local_1cc = (double)CONCAT71(local_1cc._1_7_,*(byte *)(param_1 + 0x318d));
    *(byte *)(param_1 + 0xb51) = *(byte *)(param_1 + 0x318d) ^ 1;
  }
  bVar24 = *(char *)(param_1 + 0x4f31) == '\0';
  if (bVar24) {
    bVar24 = *(char *)(param_1 + 0x5545) == '\0';
    if (!bVar24) {
      *(undefined4 *)(param_1 + 0x5930) = 2;
    }
  }
  else {
    *(undefined4 *)(param_1 + 0x5930) = 1;
  }
  bVar22 = false;
  iVar14 = 5;
  local_1f0 = (byte *)0x28e9b2;
  pbVar19 = *(byte **)(param_1 + 0x1bec);
  pbVar20 = local_1f0;
  do {
    pbVar21 = pbVar20;
    if (iVar14 == 0) break;
    iVar14 = iVar14 + -1;
    pbVar21 = pbVar20 + 1;
    bVar22 = *pbVar19 < *pbVar20;
    bVar24 = *pbVar19 == *pbVar20;
    pbVar19 = pbVar19 + 1;
    pbVar20 = pbVar21;
  } while (bVar24);
  bVar23 = false;
  bVar24 = (!bVar22 && !bVar24) == bVar22;
  if (bVar24) {
    *(undefined4 *)(param_1 + 0x5934) = 0;
  }
  else {
    iVar14 = 5;
    pbVar19 = *(byte **)(param_1 + 0x1bec);
    pbVar20 = (byte *)0x28e304;
    do {
      pbVar21 = pbVar20;
      if (iVar14 == 0) break;
      iVar14 = iVar14 + -1;
      pbVar21 = pbVar20 + 1;
      bVar23 = *pbVar19 < *pbVar20;
      bVar24 = *pbVar19 == *pbVar20;
      pbVar19 = pbVar19 + 1;
      pbVar20 = pbVar21;
    } while (bVar24);
    *(uint *)(param_1 + 0x5934) = ((!bVar23 && !bVar24) == bVar23) + 1;
  }
  if (*(char *)(param_1 + 0xd4c) == '\0') {
    if (*(char *)(param_1 + 0xd90) == '\0') {
      local_1c4 = &__DT_PLTGOT;
      pcVar12 = getenv("COLLECT_NO_DEMANGLE");
      *(bool *)(param_1 + 0x5939) = pcVar12 == (char *)0x0;
    }
    else {
      *(undefined1 *)(param_1 + 0x5939) = 0;
    }
  }
  else {
    pcVar12 = *(char **)(param_1 + 0xd50);
    *(undefined1 *)(param_1 + 0x5939) = 1;
    local_1c4 = &__DT_PLTGOT;
    if (*pcVar12 != '\0') {
      iVar14 = FUN_001ce8a0(pcVar12);
      if (iVar14 == 0) {
                    /* WARNING: Subroutine does not return */
        FUN_00065450(local_1c4 + -0x400fe,pcVar12,pbVar21,pbVar21);
      }
      FUN_001ce850(iVar14);
    }
  }
  ppuVar4 = local_1c4;
  bVar24 = false;
  bVar22 = *(char *)(param_1 + 0x2870) == '\0';
  if (!bVar22) {
    pbVar19 = *(byte **)(param_1 + 0x2874);
    iVar14 = 6;
    pbVar20 = pbVar19;
    pbVar21 = (byte *)((int)local_1c4 + -0xeb29e);
    do {
      if (iVar14 == 0) break;
      iVar14 = iVar14 + -1;
      bVar24 = *pbVar20 < *pbVar21;
      bVar22 = *pbVar20 == *pbVar21;
      pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;
      pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;
    } while (bVar22);
    bVar23 = false;
    bVar24 = (!bVar24 && !bVar22) == bVar24;
    if (bVar24) {
      *(undefined4 *)(param_1 + 0x5a88) = 0;
    }
    else {
      iVar14 = 8;
      pbVar20 = pbVar19;
      pbVar21 = (byte *)((int)local_1c4 + -0x10e8f3);
      do {
        if (iVar14 == 0) break;
        iVar14 = iVar14 + -1;
        bVar23 = *pbVar20 < *pbVar21;
        bVar24 = *pbVar20 == *pbVar21;
        pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;
        pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;
      } while (bVar24);
      bVar22 = false;
      bVar24 = (!bVar23 && !bVar24) == bVar23;
      if (bVar24) {
        *(undefined4 *)(param_1 + 0x5a88) = 1;
      }
      else {
        iVar14 = 5;
        pbVar20 = pbVar19;
        pbVar21 = (byte *)((int)local_1c4 + -0x10e8eb);
        do {
          if (iVar14 == 0) break;
          iVar14 = iVar14 + -1;
          bVar22 = *pbVar20 < *pbVar21;
          bVar24 = *pbVar20 == *pbVar21;
          pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;
          pbVar21 = pbVar21 + (uint)bVar25 * -2 + 1;
        } while (bVar24);
        bVar23 = false;
        bVar24 = (!bVar22 && !bVar24) == bVar22;
        if (bVar24) {
          *(undefined4 *)(param_1 + 0x5a88) = 2;
        }
        else {
          iVar14 = 6;
          pbVar20 = (byte *)((int)local_1c4 + -0xea022);
          do {
            if (iVar14 == 0) break;
            iVar14 = iVar14 + -1;
            bVar23 = *pbVar19 < *pbVar20;
            bVar24 = *pbVar19 == *pbVar20;
            pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;
            pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;
          } while (bVar24);
          if ((!bVar23 && !bVar24) == bVar23) {
            *(undefined4 *)(param_1 + 0x5a88) = 3;
          }
        }
      }
    }
  }
  if ((*(char *)(param_1 + 0x2401) != '\0') && (*(char *)(param_1 + 0x247c) == '\0')) {
    *(undefined1 *)(param_1 + 0x247c) = 1;
    *(undefined ***)(param_1 + 0x2480) = local_1c4 + -0x4062a;
  }
  if ((*(char *)(param_1 + 0x24c1) != '\0') || (*(char *)(param_1 + 0x253d) != '\0')) {
    *(undefined1 *)(param_1 + 0x5938) = 1;
  }
  iVar14 = *(int *)(param_1 + 0x3de8);
  if (0 < iVar14) {
    if (*(int *)(param_1 + 0x3e2c) == 0) {
      *(int *)(param_1 + 0x3e2c) = iVar14;
    }
    if (*(int *)(param_1 + 0x3e70) == 0) {
      *(int *)(param_1 + 0x3e70) = iVar14;
    }
    if (*(int *)(param_1 + 0x3eb4) == 0) {
      *(int *)(param_1 + 0x3eb4) = iVar14;
    }
  }
  local_1d4 = &local_1bc;
  local_1b4[0] = 0;
  local_1ec = local_1b4;
  local_1b8 = 0;
  local_1bc = local_1ec;
  if (*(char *)(param_1 + 0x4ca8) == '\0') {
    if (*(char *)(param_1 + 0x2729) == '\0') {
      local_1dc = local_12c;
      local_1d0 = (undefined ***)&local_134;
      local_134 = local_1dc;
                    /* try { // try from 000e81b5 to 000e81b9 has its CatchHandler @ 000e8b37 */
      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003bf,(int)local_1c4 + -0x1003b2,0);
      local_1a4 = local_19c;
                    /* try { // try from 000e81e2 to 000e81e6 has its CatchHandler @ 000e8ba5 */
      FUN_000513a0(&local_1a4,local_134,(undefined *)(local_130 + (int)local_134),0);
      local_18c = 1;
      if (local_1a0 == 0) {
                    /* try { // try from 000e8607 to 000e860b has its CatchHandler @ 000e8b3e */
        FUN_001ef9f0(&local_1a4,0,0,(int)local_1c4 + -0x1013b5,1);
      }
      local_1d8 = param_1 + 0x2184;
      piVar7 = *(int **)(param_1 + 0x2188);
      if (piVar7 == *(int **)(param_1 + 0x218c)) {
                    /* try { // try from 000e8623 to 000e8627 has its CatchHandler @ 000e8b45 */
        FUN_000eae90(local_1d8,piVar7,&local_1a4);
      }
      else {
        *piVar7 = (int)(piVar7 + 2);
                    /* try { // try from 000e823f to 000e8243 has its CatchHandler @ 000e8b45 */
        FUN_000513a0(piVar7,local_1a4,local_1a4 + local_1a0,0);
        *(undefined1 *)(piVar7 + 6) = (undefined1)local_18c;
        *(undefined1 *)((int)piVar7 + 0x19) = local_18c._1_1_;
        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;
      }
      if (local_1a4 != local_19c) {
        FUN_001e6db0(local_1a4);
      }
      if (local_134 != local_1dc) {
        FUN_001e6db0(local_134);
      }
      local_134 = local_1dc;
                    /* try { // try from 000e82c9 to 000e82cd has its CatchHandler @ 000e8b37 */
      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003c3,(int)local_1c4 + -0x1003b2,0);
      local_188 = local_180;
                    /* try { // try from 000e82f6 to 000e82fa has its CatchHandler @ 000e8b7d */
      FUN_000513a0(&local_188,local_134,(undefined *)(local_130 + (int)local_134),0);
      local_170 = 1;
      if (local_184 == 0) {
                    /* try { // try from 000e87a7 to 000e87ab has its CatchHandler @ 000e8b68 */
        FUN_001ef9f0(&local_188,0,0,(int)local_1c4 + -0x1013b5,1);
      }
      piVar7 = *(int **)(param_1 + 0x2188);
      if (piVar7 == *(int **)(param_1 + 0x218c)) {
                    /* try { // try from 000e883b to 000e883f has its CatchHandler @ 000e8b6f */
        FUN_000eae90(local_1d8,piVar7,&local_188);
      }
      else {
        *piVar7 = (int)(piVar7 + 2);
                    /* try { // try from 000e8345 to 000e8349 has its CatchHandler @ 000e8b6f */
        FUN_000513a0(piVar7,local_188,local_188 + local_184,0);
        *(undefined1 *)(piVar7 + 6) = (undefined1)local_170;
        *(undefined1 *)((int)piVar7 + 0x19) = local_170._1_1_;
        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;
      }
      if (local_188 != local_180) {
        FUN_001e6db0(local_188);
      }
      if (local_134 != local_1dc) {
        FUN_001e6db0(local_134);
      }
      local_134 = local_1dc;
                    /* try { // try from 000e83cf to 000e83d3 has its CatchHandler @ 000e8b37 */
      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003ad,(int)local_1c4 + -0x1003a9,0);
      local_16c = local_164;
                    /* try { // try from 000e83fc to 000e8400 has its CatchHandler @ 000e8b76 */
      FUN_000513a0(&local_16c,local_134,(undefined *)(local_130 + (int)local_134),0);
      local_154 = 1;
      if (local_168 == 0) {
                    /* try { // try from 000e87cf to 000e87d3 has its CatchHandler @ 000e8b61 */
        FUN_001ef9f0(&local_16c,0,0,(int)local_1c4 + -0x1013b5,1);
      }
      piVar7 = *(int **)(param_1 + 0x2188);
      if (piVar7 == *(int **)(param_1 + 0x218c)) {
                    /* try { // try from 000e881b to 000e881f has its CatchHandler @ 000e8b4c */
        FUN_000eae90(local_1d8,piVar7,&local_16c);
      }
      else {
        *piVar7 = (int)(piVar7 + 2);
                    /* try { // try from 000e844b to 000e844f has its CatchHandler @ 000e8b4c */
        FUN_000513a0(piVar7,local_16c,local_16c + local_168,0);
        *(undefined1 *)(piVar7 + 6) = (undefined1)local_154;
        *(undefined1 *)((int)piVar7 + 0x19) = local_154._1_1_;
        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;
      }
      if (local_16c != local_164) {
        FUN_001e6db0(local_16c);
      }
      if (local_134 != local_1dc) {
        FUN_001e6db0(local_134);
      }
      local_134 = local_1dc;
                    /* try { // try from 000e84d5 to 000e84d9 has its CatchHandler @ 000e8b37 */
      FUN_00050e40(local_1d0,(int)local_1c4 + -0x1003b1,(int)local_1c4 + -0x1003a9,0);
      local_1e0 = local_148;
      local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);
      local_150 = local_1e0;
                    /* try { // try from 000e850e to 000e8512 has its CatchHandler @ 000e8b1b */
      FUN_000513a0(&local_150,local_134,(undefined *)(local_130 + (int)local_134),0);
      local_138 = 1;
      if (local_14c == 0) {
                    /* try { // try from 000e87fc to 000e8800 has its CatchHandler @ 000e8b5a */
        FUN_001ef9f0(local_1cc._0_4_,0,0,(int)local_1c4 + -0x1013b5,1);
      }
      piVar7 = *(int **)(param_1 + 0x2188);
      if (piVar7 == *(int **)(param_1 + 0x218c)) {
                    /* try { // try from 000e8860 to 000e8864 has its CatchHandler @ 000e8b14 */
        FUN_000eae90(local_1d8,piVar7,local_1cc._0_4_);
      }
      else {
        *piVar7 = (int)(piVar7 + 2);
                    /* try { // try from 000e855d to 000e8561 has its CatchHandler @ 000e8b14 */
        FUN_000513a0(piVar7,local_150,local_150 + local_14c,0);
        *(undefined1 *)(piVar7 + 6) = (undefined1)local_138;
        *(undefined1 *)((int)piVar7 + 0x19) = local_138._1_1_;
        *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;
      }
      if (local_150 != local_1e0) {
        FUN_001e6db0(local_150);
      }
      if (local_134 != local_1dc) {
        FUN_001e6db0(local_134);
      }
      goto LAB_000e7f08;
    }
  }
  else {
    pcVar12 = *(char **)(param_1 + 0x4cac);
    sVar9 = strlen(pcVar12);
    ppuVar3 = local_1d4;
                    /* try { // try from 000e7ede to 000e7f8e has its CatchHandler @ 000e8b37 */
    FUN_001ef9f0(local_1d4,0,0,pcVar12,sVar9);
    iVar14 = FUN_001f13d0(ppuVar3,0,2,(int)ppuVar4 + -0x1003c6);
    if (iVar14 == 0) {
      uVar6 = local_1b8;
      if (2 < local_1b8) {
        uVar6 = 2;
      }
                    /* try { // try from 000e877d to 000e8781 has its CatchHandler @ 000e8b37 */
      FUN_001eebf0(local_1d4,0,uVar6);
    }
LAB_000e7f08:
    uVar6 = 0;
    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);
    if (local_1b8 != 0) {
      do {
        iVar14 = FUN_001f0c10(local_1d4,0x3a,uVar6);
        uVar16 = 0xffffffff;
        if ((iVar14 == -1) || (uVar16 = iVar14 - uVar6, uVar16 != 0)) {
          if (local_1b8 < uVar6) {
                    /* WARNING: Subroutine does not return */
            FUN_0022c840(local_1c4 + -0x4104f,local_1c4 + -0x400ea,uVar6,local_1b8);
          }
          local_1e0 = local_148;
          uVar10 = local_1b8 - uVar6;
          if (uVar16 < local_1b8 - uVar6) {
            uVar10 = uVar16;
          }
          local_150 = local_1e0;
          FUN_00050e40(local_1cc._0_4_,local_1bc + uVar6,local_1bc + uVar6 + uVar10,0);
          local_1dc = local_12c;
          local_1d0 = (undefined ***)&local_134;
          local_134 = local_1dc;
                    /* try { // try from 000e7fc3 to 000e7fc7 has its CatchHandler @ 000e8b53 */
          FUN_000513a0(local_1d0,local_150,local_150 + local_14c,0);
          local_11c = 1;
          if (local_130 == 0) {
                    /* try { // try from 000e80ac to 000e80b0 has its CatchHandler @ 000e8b22 */
            FUN_001ef9f0(local_1d0,0,0,(int)local_1c4 + -0x1013b5,1);
          }
          piVar7 = *(int **)(param_1 + 0x2188);
          if (piVar7 == *(int **)(param_1 + 0x218c)) {
                    /* try { // try from 000e80d3 to 000e80d7 has its CatchHandler @ 000e8b9e */
            FUN_000eae90(param_1 + 0x2184,piVar7,local_1d0);
          }
          else {
            *piVar7 = (int)(piVar7 + 2);
                    /* try { // try from 000e8012 to 000e8016 has its CatchHandler @ 000e8b9e */
            FUN_000513a0(piVar7,local_134,(undefined *)(local_130 + (int)local_134),0);
            *(undefined1 *)(piVar7 + 6) = (undefined1)local_11c;
            *(undefined1 *)((int)piVar7 + 0x19) = local_11c._1_1_;
            *(int *)(param_1 + 0x2188) = *(int *)(param_1 + 0x2188) + 0x1c;
          }
          if (local_134 != local_1dc) {
            FUN_001e6db0(local_134);
          }
          if (local_150 != local_1e0) {
            FUN_001e6db0(local_150);
          }
          if (iVar14 == -1) break;
        }
        uVar6 = iVar14 + 1;
      } while( true );
    }
  }
  ppuVar4 = local_1c4;
  puVar17 = auStack_20c;
  puVar18 = auStack_20c;
  if (*(int *)(param_1 + 0x3288) != 0) {
    local_1e8 = local_a4;
    local_1d0 = (undefined ***)&local_134;
    FUN_0022bca0(local_1e8);
    local_1fc = ppuVar4 + -0xa14;
    local_34 = 0;
    local_2c = 0;
    local_a4[0] = ppuVar4 + -0xa12;
    local_30 = 0;
    local_28 = 0;
    local_1f4 = (undefined ***)ppuVar4[-0x9d9];
    local_1f8 = ppuVar4[-0x9d8];
    local_24 = 0;
    local_20 = 0;
    local_134 = local_1f4;
    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;
    local_130 = 0;
                    /* try { // try from 000e77b7 to 000e77bb has its CatchHandler @ 000e8b92 */
    FUN_00211450((int)local_1f4[-3] + (int)&local_134,0);
    local_200 = ppuVar4 + -0x9d6;
    local_134 = (undefined ***)(ppuVar4 + -0x9d3);
    local_a4[0] = ppuVar4 + -0x9ce;
    local_1dc = local_12c;
                    /* try { // try from 000e77e9 to 000e77ed has its CatchHandler @ 000e8b84 */
    FUN_00213670(local_12c);
                    /* try { // try from 000e77f7 to 000e77fb has its CatchHandler @ 000e8b29 */
    FUN_00211450(local_1e8,local_12c);
                    /* try { // try from 000e780b to 000e783a has its CatchHandler @ 000e8b30 */
    iVar14 = FUN_00217950(local_12c,*(undefined4 *)(param_1 + 0x3288),8);
    puVar15 = (undefined *)((int)local_1d0 + (int)local_134[-3]);
    if (iVar14 == 0) {
                    /* try { // try from 000e8751 to 000e8755 has its CatchHandler @ 000e8b30 */
      FUN_00210c00(puVar15,*(uint *)(puVar15 + 0x14) | 4);
    }
    else {
      FUN_00210c00(puVar15,0);
    }
    ppuVar4 = local_1c4;
    if ((local_90 & 5) != 0) {
      piVar7 = __errno_location();
      pcVar12 = strerror(*piVar7);
      uVar11 = *(undefined4 *)(param_1 + 0x3288);
      uVar13 = gettext(local_1c4 + -0x3f6cb);
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e8a0c to 000e8a10 has its CatchHandler @ 000e8b30 */
      FUN_00065450(uVar13,uVar11,pcVar12);
    }
    local_1e0 = local_148;
    local_148[0] = 0;
    local_14c = 0;
    piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);
    local_150 = local_1e0;
    if (piVar7 == (int *)0x0) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e8af0 to 000e8af4 has its CatchHandler @ 000e8b8b */
      FUN_0022c630();
    }
    if ((char)piVar7[7] == '\0') {
                    /* try { // try from 000e80ec to 000e8113 has its CatchHandler @ 000e8b8b */
      FUN_0022ccc0(piVar7);
      iVar14 = 10;
      if (*(undefined ***)(*piVar7 + 0x18) != ppuVar4 + -0xba9e0) {
        cVar5 = (*(code *)*(undefined ***)(*piVar7 + 0x18))(piVar7,10);
        iVar14 = (int)cVar5;
      }
    }
    else {
      iVar14 = (int)*(char *)((int)piVar7 + 0x27);
    }
    local_1cc = (double)CONCAT44(local_1cc._4_4_,&local_150);
                    /* try { // try from 000e78b1 to 000e78f6 has its CatchHandler @ 000e8b8b */
    FUN_001e7cb0(local_1d0,&local_150,iVar14);
    local_1d4 = (undefined1 **)(param_1 + 0x5a3c);
    local_1e4 = local_1c0;
    while ((local_90 & 5) == 0) {
      if ((local_14c != 0) && (local_150[local_14c + -1] == '\r')) {
        *(undefined4 *)(puVar17 + -8) = 0;
        *(int *)(puVar17 + -0xc) = local_14c + -1;
        *(undefined4 *)(puVar17 + -0x10) = local_1cc._0_4_;
                    /* try { // try from 000e7e32 to 000e7e36 has its CatchHandler @ 000e8b8b */
        *(undefined4 *)(puVar17 + -0x14) = 0xe7e37;
        FUN_001ef780();
      }
      *(undefined4 *)(puVar17 + -8) = 0xc70f6907;
      *(int *)(puVar17 + -0xc) = local_14c;
      *(undefined1 **)(puVar17 + -0x10) = local_150;
      *(undefined4 *)(puVar17 + -0x14) = 0xe793a;
      uVar6 = FUN_001e52b0();
      local_1d8 = uVar6 % *(uint *)(param_1 + 0x5a40);
      *(uint *)(puVar17 + -0x14) = uVar6;
      *(undefined4 *)(puVar17 + -0x18) = local_1cc._0_4_;
      *(uint *)(puVar17 + -0x1c) = local_1d8;
      *(undefined1 ***)(puVar17 + -0x20) = local_1d4;
      *(undefined4 *)(puVar17 + -0x24) = 0xe7960;
      piVar7 = (int *)FUN_000eadf0();
      if ((piVar7 == (int *)0x0) || (*piVar7 == 0)) {
        *(undefined4 *)(puVar17 + -0x10) = 0x20;
                    /* try { // try from 000e7a7b to 000e7a7f has its CatchHandler @ 000e8b8b */
        *(undefined4 *)(puVar17 + -0x14) = 0xe7a80;
        puVar8 = (undefined4 *)FUN_001e5200();
        *puVar8 = 0;
        puVar8[1] = puVar8 + 3;
        *(undefined4 *)(puVar17 + -4) = 0;
        *(undefined1 **)(puVar17 + -8) = local_150 + local_14c;
        *(undefined1 **)(puVar17 + -0xc) = local_150;
        *(undefined4 **)(puVar17 + -0x10) = puVar8 + 1;
                    /* try { // try from 000e7aa7 to 000e7aab has its CatchHandler @ 000e8b99 */
        *(undefined4 *)(puVar17 + -0x14) = 0xe7aac;
        FUN_000513a0();
        *(undefined4 *)(puVar17 + -0xc) = 1;
        *(undefined4 **)(puVar17 + -0x10) = puVar8;
        *(uint *)(puVar17 + -0x14) = uVar6;
        *(uint *)(puVar17 + -0x18) = local_1d8;
        *(undefined1 ***)(puVar17 + -0x1c) = local_1d4;
        *(undefined1 **)(puVar17 + -0x20) = local_1e4;
                    /* try { // try from 000e7ac4 to 000e7ac8 has its CatchHandler @ 000e8b8b */
        *(undefined4 *)(puVar17 + -0x24) = 0xe7ac9;
        FUN_000ec3b0();
        puVar17 = puVar17 + -4;
      }
      ppuVar4 = local_1c4;
      piVar7 = *(int **)((int)aiStack_b8 + (int)local_134[-3]);
      if (piVar7 == (int *)0x0) {
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e88aa to 000e88ae has its CatchHandler @ 000e8b8b */
        *(undefined4 *)(puVar17 + -4) = 0xe88af;
        FUN_0022c630();
      }
      if ((char)piVar7[7] == '\0') {
        *(int **)(puVar17 + -0x10) = piVar7;
                    /* try { // try from 000e79a3 to 000e79ca has its CatchHandler @ 000e8b8b */
        *(undefined4 *)(puVar17 + -0x14) = 0xe79a8;
        FUN_0022ccc0();
        ppuVar2 = *(undefined ***)(*piVar7 + 0x18);
        iVar14 = 10;
        if (ppuVar2 != ppuVar4 + -0xba9e0) {
          *(undefined4 *)(puVar17 + -0xc) = 10;
          *(int **)(puVar17 + -0x10) = piVar7;
          *(undefined4 *)(puVar17 + -0x14) = 0xe79cb;
          cVar5 = (*(code *)ppuVar2)();
          iVar14 = (int)cVar5;
        }
      }
      else {
        iVar14 = (int)*(char *)((int)piVar7 + 0x27);
      }
      *(int *)(puVar17 + -8) = iVar14;
      *(undefined4 *)(puVar17 + -0xc) = local_1cc._0_4_;
      *(undefined ****)(puVar17 + -0x10) = local_1d0;
      *(undefined4 *)(puVar17 + -0x14) = 0xe78f7;
      FUN_001e7cb0();
    }
    if (local_150 != local_1e0) {
      *(undefined1 **)(puVar17 + -0x10) = local_150;
      *(undefined4 *)(puVar17 + -0x14) = 0xe7aef;
      FUN_001e6db0();
    }
    ppuVar4 = local_1c4;
    *(undefined ****)(puVar17 + -0x10) = local_1dc;
    local_134 = (undefined ***)(local_200 + 3);
    local_a4[0] = local_200 + 8;
    local_12c[0] = local_1c4 + -0x9f2;
    *(undefined4 *)(puVar17 + -0x14) = 0xe7b2f;
    FUN_00216e90();
    *(undefined1 **)(puVar17 + -0x10) = local_f4;
    *(undefined4 *)(puVar17 + -0x14) = 0xe7b3d;
    FUN_001e75f0();
    local_12c[0] = ppuVar4 + -0xbd7;
    *(undefined1 **)(puVar17 + -0x10) = local_110;
    *(undefined4 *)(puVar17 + -0x14) = 0xe7b5a;
    FUN_001e9510();
    local_134 = local_1f4;
    *(undefined **)((int)&local_134 + (int)local_1f4[-3]) = local_1f8;
    local_130 = 0;
    local_a4[0] = local_1fc + 2;
    *(undefined ****)(puVar17 + -0x10) = local_1e8;
    *(undefined4 *)(puVar17 + -0x14) = 0xe7b9b;
    FUN_0022c040();
    puVar18 = puVar17;
  }
  if ((*(char *)(param_1 + 0x72d) != '\0') && (*(char *)(param_1 + 0x42e0) == '\0')) {
    *(int *)(param_1 + 0x42e4) = (int)local_1c4 + -0x10e8db;
  }
  if ((*(char *)(param_1 + 0x1a25) != '\0') && (*(char *)(param_1 + 0x1fc) == '\0')) {
    *(undefined1 *)(param_1 + 0x1fd) = 1;
  }
  *(int *)(puVar18 + -0x10) = param_1;
                    /* try { // try from 000e7bea to 000e7e1a has its CatchHandler @ 000e8b37 */
  *(undefined4 *)(puVar18 + -0x14) = 0xe7bef;
  FUN_000ddde0();
  if (*(char *)(param_1 + 0x1a25) == '\0') {
    if (*(char *)(param_1 + 0x2931) != '\0') {
      if (*(char *)(param_1 + 0x5938) != '\0') {
        *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6ac;
        *(undefined4 *)(puVar18 + -0x14) = 0xe8b0c;
        uVar11 = gettext();
        *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e8b0f to 000e8b13 has its CatchHandler @ 000e8b37 */
        *(undefined1 **)(puVar18 + -0x14) = &LAB_000e8b14;
        FUN_00065450();
      }
      if (*(char *)(param_1 + 0x318d) != '\0') {
        *(int *)(puVar18 + -0x10) = (int)local_1c4 + -0x100393;
        *(undefined4 *)(puVar18 + -0x14) = 0xe896d;
        uVar11 = gettext();
        *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
        *(undefined4 *)(puVar18 + -0x14) = 0xe8975;
        FUN_00065450();
      }
    }
    if (*(int *)(param_1 + 0x1478) != 0) {
      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f69b;
      *(undefined4 *)(puVar18 + -0x14) = 0xe898c;
      uVar11 = gettext();
      *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
      *(undefined4 *)(puVar18 + -0x14) = 0xe8994;
      FUN_00065450();
    }
    if (*(int *)(param_1 + 0x1428) != 0) {
      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f690;
      *(undefined4 *)(puVar18 + -0x14) = 0xe89c0;
      uVar11 = gettext();
      *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e89c3 to 000e89c7 has its CatchHandler @ 000e8b37 */
      *(undefined4 *)(puVar18 + -0x14) = 0xe89c8;
      FUN_00065450();
    }
    if ((*(char *)(param_1 + 0x318d) != '\0') && (*(int *)(param_1 + 0x3288) != 0)) {
      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f684;
      *(undefined4 *)(puVar18 + -0x14) = 0xe7e13;
      uVar11 = gettext();
      *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
      *(undefined **)(puVar18 + -0x14) = &UNK_000e7e1b;
      FUN_00065450();
    }
  }
  else {
    if (*(char *)(param_1 + 0x5938) != '\0') {
      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6bf;
      *(undefined4 *)(puVar18 + -0x14) = 0xe8ae2;
      uVar11 = gettext();
      *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
      *(undefined4 *)(puVar18 + -0x14) = 0xe8aea;
      FUN_00065450();
    }
    if (*(char *)(param_1 + 0x2931) != '\0') {
      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6b5;
      *(undefined4 *)(puVar18 + -0x14) = 0xe892f;
      uVar11 = gettext();
      *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
      *(undefined4 *)(puVar18 + -0x14) = 0xe8937;
      FUN_00065450();
    }
    if (*(char *)(param_1 + 0x318d) != '\0') {
      *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f6a3;
      *(undefined4 *)(puVar18 + -0x14) = 0xe894e;
      uVar11 = gettext();
      *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
      *(undefined4 *)(puVar18 + -0x14) = 0xe8956;
      FUN_00065450();
    }
  }
  *(undefined4 *)(puVar18 + -0x10) = *(undefined4 *)(param_1 + 0x27ec);
  *(undefined4 *)(puVar18 + -0x14) = 0xe7c40;
  iVar14 = FUN_000dd760();
  if ((iVar14 != 0) &&
     (((*(char *)(param_1 + 0x1a25) != '\0' || (*(char *)(param_1 + 0x2931) != '\0')) ||
      (*(char *)(param_1 + 0x318d) != '\0')))) {
    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f678;
    *(undefined4 *)(puVar18 + -0x14) = 0xe8910;
    uVar11 = gettext();
    *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
    *(undefined4 *)(puVar18 + -0x14) = 0xe8918;
    FUN_00065450();
  }
  if ((*(char *)(param_1 + 0x1ae4) != '\0') &&
     ((dVar1 = *(double *)(param_1 + 0x1ae8), dVar1 < 0.0 || (1.0 <= dVar1)))) {
    local_1cc = dVar1;
    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f668;
    *(undefined4 *)(puVar18 + -0x14) = 0xe88cc;
    uVar11 = gettext();
    dVar1 = local_1cc;
    *(undefined4 *)(puVar18 + -0x10) = uVar11;
    *(double *)(puVar18 + -0xc) = dVar1;
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e88d9 to 000e8993 has its CatchHandler @ 000e8b37 */
    *(undefined4 *)(puVar18 + -0x14) = 0xe88de;
    FUN_00065450();
  }
  if (*(char *)(param_1 + 0x5a1c) == '\0') {
    if (*(int *)(param_1 + 0x5a10) == 0) goto LAB_000e7d53;
  }
  else if (*(int *)(param_1 + 0x5a10) == 0) {
    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f658;
    *(undefined4 *)(puVar18 + -0x14) = 0xe8a66;
    uVar11 = gettext();
    *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
    *(undefined4 *)(puVar18 + -0x14) = 0xe8a6e;
    FUN_00065450();
  }
  if (*(char *)(param_1 + 0x318d) != '\0') {
    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f63c;
    *(undefined4 *)(puVar18 + -0x14) = 0xe8a85;
    uVar11 = gettext();
    *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
    *(undefined4 *)(puVar18 + -0x14) = 0xe8a8d;
    FUN_00065450();
  }
  if (*(char *)(param_1 + 0x3095) != '\0') {
    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f630;
    *(undefined4 *)(puVar18 + -0x14) = 0xe8aa4;
    uVar11 = gettext();
    *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
    *(undefined4 *)(puVar18 + -0x14) = 0xe8aac;
    FUN_00065450();
  }
  if (*(int *)(param_1 + 0x593c) != 0) {
    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f621;
    *(undefined4 *)(puVar18 + -0x14) = 0xe8ac3;
    uVar11 = gettext();
    *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
    *(undefined4 *)(puVar18 + -0x14) = 0xe8acb;
    FUN_00065450();
  }
  if (*(char *)(param_1 + 0x56b9) != '\0') {
    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f614;
    *(undefined4 *)(puVar18 + -0x14) = 0xe8a28;
    uVar11 = gettext();
    *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
                    /* try { // try from 000e8a2b to 000e8ae9 has its CatchHandler @ 000e8b37 */
    *(undefined4 *)(puVar18 + -0x14) = 0xe8a30;
    FUN_00065450();
  }
  if (*(char *)(param_1 + 0x2931) != '\0') {
    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f607;
    *(undefined4 *)(puVar18 + -0x14) = 0xe8a47;
    uVar11 = gettext();
    *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* WARNING: Subroutine does not return */
    *(undefined4 *)(puVar18 + -0x14) = 0xe8a4f;
    FUN_00065450();
  }
  if (*(char *)(param_1 + 0x18b1) != '\0') {
    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5fb;
    *(undefined4 *)(puVar18 + -0x14) = 0xe871f;
    uVar11 = gettext();
    *(undefined4 *)(puVar18 + -0x10) = uVar11;
    *(undefined4 *)(puVar18 + -0x14) = 0xe8727;
    FUN_000654e0();
    *(undefined1 *)(param_1 + 0x18b1) = 0;
  }
  bVar22 = *(int *)(param_1 + 0x5934) == 0;
  bVar24 = !bVar22;
  if (bVar24) {
    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5ef;
    *(undefined4 *)(puVar18 + -0x14) = 0xe86e7;
    uVar11 = gettext();
    *(undefined4 *)(puVar18 + -0x10) = uVar11;
    *(undefined4 *)(puVar18 + -0x14) = 0xe86ef;
    FUN_000654e0();
    *(undefined4 *)(param_1 + 0x5934) = 0;
  }
  bVar24 = bVar24 && (undefined1 *)0xffffffef < puVar18 + -0x10;
  bVar22 = bVar22 || puVar18 == (undefined1 *)0x0;
  iVar14 = 5;
  pbVar19 = *(byte **)(param_1 + 0x99c);
  pbVar20 = local_1f0;
  do {
    if (iVar14 == 0) break;
    iVar14 = iVar14 + -1;
    bVar24 = *pbVar19 < *pbVar20;
    bVar22 = *pbVar19 == *pbVar20;
    pbVar19 = pbVar19 + (uint)bVar25 * -2 + 1;
    pbVar20 = pbVar20 + (uint)bVar25 * -2 + 1;
  } while (bVar22);
  if ((!bVar24 && !bVar22) != bVar24) {
    *(undefined ***)(puVar18 + -0x10) = local_1c4 + -0x3f5e5;
    *(undefined4 *)(puVar18 + -0x14) = 0xe86af;
    uVar11 = gettext();
    *(undefined4 *)(puVar18 + -0x10) = uVar11;
                    /* try { // try from 000e86b2 to 000e8726 has its CatchHandler @ 000e8b37 */
    *(undefined4 *)(puVar18 + -0x14) = 0xe86b7;
    FUN_000654e0();
    *(byte **)(param_1 + 0x99c) = local_1f0;
  }
LAB_000e7d53:
  if (*(char *)(param_1 + 0x3344) != '\0') {
    *(undefined1 *)(param_1 + 0x32c9) = 1;
  }
  if (local_1bc != local_1ec) {
    *(undefined1 **)(puVar18 + -0x10) = local_1bc;
    *(undefined4 *)(puVar18 + -0x14) = 0xe7d83;
    FUN_001e6db0();
  }
  return;
}

